我正在尝试使用 Javascript 中的 while 循环打印从 10 到 40 的所有偶数。但是当我在 Chrome 浏览器控制台中执行代码时,我只看到 10 个。这是我的代码:
var x = 10;
while (x !== 41 && x % 2 == 0){
console.log(x)
x++
}
最佳答案
问题是 x % 2 == 0
部分。一旦x
变成 11
循环退出,因为该条件的计算结果为 false
.为了继续循环,while()
中的两个条件括号必须计算为 true
因为你正在使用 &&
运营商。
您应该将该特定条件移动到 if
循环内的语句,像这样:
var x = 10;
while (x !== 41) {
if (x % 2 == 0)
console.log(x);
x++;
}
上面的解决方案一直持续到x
是41
在这种情况下,它将退出循环并只运行 console.log(x)
语句,如果x % 2
等于0
( x
是偶数)。
我想给你的一个提示是养成使用 ===
的习惯。而不是 ==
.这将确保您的值是正确的类型(例如 x == 2
是 true
当 x
是 "2"
但 x === 2
将返回 false
因为类型不同)并且可能会帮助您发现一些错误调试时。
另一个技巧是使用 x < 41
而不是 x !== 41
, 它更常用,对大多数人来说更容易阅读。
关于javascript - 我正在尝试使用 Javascript 中的 while 循环打印从 10 到 40 的所有偶数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58268976/