gpt4 book ai didi

javascript - 我对使用 javascript while 语句感到困惑

转载 作者:行者123 更新时间:2023-11-30 15:55:42 25 4
gpt4 key购买 nike

我最近挑选了一些 javascript 代码 - 因为我不是 js 专家,一旦我让它运行起来,我喜欢剖析它以便更好地理解。

代码如下:

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 和 if 语句 - 如果我添加大括号,我会得到一个更清晰的画面,如下所示:

        while (c.charAt(0) == " ") {
c = c.substring(1, c.length);
}
if (c.indexOf(nameEQ) == 0) {
return c.substring(nameEQ.length, c.length);
}

但我无法理解的是,为什么要使用 while 语句 - 当然“if”会更合适 - 还是我的括号有误?

澄清会很好。

最佳答案

如果你有一个以几个空格开头的文本,首先你会得到 c.charAt(0) == "" 为真,然后第一个字符被删除。然后字符串开头的字符将是您最初拥有的第二个空格,因此它仍然为真,并且空格将被删除。这将一直持续到您在开始时没有任何空间为止。

关于javascript - 我对使用 javascript while 语句感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38589062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com