[英]Javascript code goes into infinite loop
以下代码进入无限循环,并且网页崩溃了,我需要知道这是怎么回事?
for (var i = 0; i < 2; i+1) {
for (var j = i; j < 8; j + 2) {
console.log(arr[j].Qu);
}
console.log(arr[i]);
}
i + 1不会更新i的值,因此,i始终为1,因为每次运行都需要0 + 1,因此永不> 2且永无止境,您需要使用i ++对其进行更改,例如
for (var i = 0; i < 2; i++) {
另外,正如@Xufox指出的那样,使用
for (var j = i; j < 8; j += 2) {
i + 1不是分配操作,这就是为什么您需要自己分配值的原因。 i++
和j+=2
转换为
i = i+1;
j= j+2;
右手操作的结果将自赋给变量
值未分配回变量。
for (var i = 0; i < 2; i+=1) { // i++
for (var j = i; j < 8; j+=2) {
console.log(arr[j].Qu);
}
console.log(arr[i]);
}
i+1
不会修改i值。 您可以改为编写i++
。
同样, j + 2
不会更新j。 您应该写j += 2
。
这是更正的代码:
for (var i = 0; i < 2; i++) {
for (var j = i; j < 8; j += 2) {
console.log(arr[j].Qu);
}
console.log(arr[i]);
}
for (var i = 0; i < 2; i+=1) { for (var j = i; j < 8; j+= 2) { console.log(arr[j]); } console.log(arr[i]); }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.