在 Javascript 的 While 循环中使用 Continue
Using Continue in a While loop in Javascript
请帮我找出我在这段代码中的错误。
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] >70){
continue;
}
console.log(numbers[i])
i++;
}
我要输出
12
34
23
8
48
但代码显示输出:
12
34
23
并且运行不会停止。
您需要在使用 continue
之前更新 i
值,否则 i
的值将保持不变,从而导致循环变成无限循环。
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] >70){
i++;
continue;
}
console.log(numbers[i])
i++;
}
你有一个无限循环,因为如果 numbers[i] > 70
它没有增加 i
,那么下一个循环它会再次检查相同的条件而不增加 i
值。有多种方法可以解决此问题,但一种选择是在 numbers[i] <= 70
时输出值,并始终递增 i
.
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] <= 70){
console.log(numbers[i]);
}
i++;
}
另一种选择是不同的循环:
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
for(i = 0; i < numbers.length; i++) {
if (numbers[i] > 70){
continue;
}
console.log(numbers[i]);
}
或者更简单的方法:
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
for(i = 0; i < numbers.length; i++) {
if (numbers[i] <= 70){
console.log(numbers[i]);
}
}
您可以 re-write 您的逻辑,而不是中断 while
循环:
if (numbers[i] < 71){
console.log(numbers[i]);
}
因此循环每次迭代的默认操作只是递增 i
,并且控制台单独记录一个值 仅当满足条件时 .
工作示例:
let numbers = [12, 34, 23, 98, 08, 78, 73, 48];
let i = 0;
while (i < numbers.length){
if (numbers[i] < 71){
console.log(numbers[i]);
}
i++;
}
请帮我找出我在这段代码中的错误。
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] >70){
continue;
}
console.log(numbers[i])
i++;
}
我要输出
12
34
23
8
48
但代码显示输出:
12
34
23
并且运行不会停止。
您需要在使用 continue
之前更新 i
值,否则 i
的值将保持不变,从而导致循环变成无限循环。
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] >70){
i++;
continue;
}
console.log(numbers[i])
i++;
}
你有一个无限循环,因为如果 numbers[i] > 70
它没有增加 i
,那么下一个循环它会再次检查相同的条件而不增加 i
值。有多种方法可以解决此问题,但一种选择是在 numbers[i] <= 70
时输出值,并始终递增 i
.
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
while (i < numbers.length){
if (numbers[i] <= 70){
console.log(numbers[i]);
}
i++;
}
另一种选择是不同的循环:
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
for(i = 0; i < numbers.length; i++) {
if (numbers[i] > 70){
continue;
}
console.log(numbers[i]);
}
或者更简单的方法:
var numbers = [12, 34, 23, 98, 08, 78, 73, 48];
var i = 0;
for(i = 0; i < numbers.length; i++) {
if (numbers[i] <= 70){
console.log(numbers[i]);
}
}
您可以 re-write 您的逻辑,而不是中断 while
循环:
if (numbers[i] < 71){
console.log(numbers[i]);
}
因此循环每次迭代的默认操作只是递增 i
,并且控制台单独记录一个值 仅当满足条件时 .
工作示例:
let numbers = [12, 34, 23, 98, 08, 78, 73, 48];
let i = 0;
while (i < numbers.length){
if (numbers[i] < 71){
console.log(numbers[i]);
}
i++;
}