gpt4 book ai didi

javascript - for 循环中的奇怪行为,语句不执行

转载 作者:行者123 更新时间:2023-12-01 02:23:21 25 4
gpt4 key购买 nike

我将展示我的代码和一些图像来演示该问题。

诸如变量声明或使用 log 函数之类的简单语句会导致 json 结果未定义。当我输入文本时,将执行 ajax 调用并返回数据。

已更新这是我作为文本包含的代码。当复制并粘贴代码时,缺少花括号的问题非常明显。正如您在图片中看到的那样,VS 2017 并不能帮助您轻松注意到缺失的大括号,他们可以改进它。

for (var i = 0; i < data.length; i++)

console.log("some message");
console.log(data[i].titulo);

enter image description here

删除语句:

enter image description here

现在检查一下,当 for 循环中有一个语句时,它似乎只被评估一次。

enter image description here

当我执行该语句时,“i is x”被执行了更多次。

enter image description here

最佳答案

与您使用的 json 无关。纯粹关于 for 循环,不使用花括号。

您缺少循环的 {}。如果没有 {},则只有第一个语句属于 for 循环

所以在你的情况1中,你的代码等于

for ( ..) {
console.log(..);
}
console.log(data[i]...)

它在情况 2 中有效,因为您删除了控制台日志语句,因此它等于

 for ( ..) {
console.log(data[i]...)
}

如果您想在 for 循环中使用这两个语句,请使用 {}

for ( ..) {
console.log(..);
console.log(data[i]...)
}

不仅要拥有多个语句,即使对于单个语句,也请尝试始终使用 {} 以避免这样的混淆。

关于javascript - for 循环中的奇怪行为,语句不执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49030174/

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