我最近選擇了一些javascript代碼 - 因爲我不是js專家,一旦我運行了它,我喜歡將它細化,以便我可以更好地使用我的代碼理解。l'm使用javascript語句令人困惑
下面的代碼:
function checkCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(";");
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == " ") c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
return null;
}
是交代不清的堆疊位,而如果聲明 - 如果我添加大括號,我得到這樣一個清晰的畫面:
while (c.charAt(0) == " ") {
c = c.substring(1, c.length);
}
if (c.indexOf(nameEQ) == 0) {
return c.substring(nameEQ.length, c.length);
}
但什麼我無法理解的是爲什麼一段時間的聲明被使用 - 當然,'如果'會更合適 - 或者我得到括號錯誤?
說明會很好。
您正在使用while語句在開始處剪切所有空格。一個if語句只會被刪減一次!此外,如果身體只有一行,則可選可選coryry括號:) –
您可循環刪除c開始處的每個空格。它是String c的左邊修剪。 – AxelH
'.trim()'是你應該使用的。似乎你正在修剪字符串。 – Jai