gpt4 book ai didi

javascript - JavaScript 中的 FizzBu​​zz : the code won't execute or print at all

转载 作者:行者123 更新时间:2023-11-28 13:28:29 24 4
gpt4 key购买 nike

一直在解决 FizzBu​​zz 问题,我想知道为什么以下代码不会执行,没有任何内容打印到控制台。

var i = 0;
while (i = 0, i < 100, i++ ) {
if ( i % 3 === 0) {
console.log("Fizz");
} else if ( i % 5 === 0) {
console.log("Buzz");
} else {
console.log(i);
}
}

我错过了什么?

最佳答案

您使用了错误的循环结构。它应该是 for,而不是 while。另请注意,子句之间是分号,而不是逗号:

for (i=0; i < 100; i++) {

你拥有的是这样的:

while (i = 0, i < 100, i++) {

逗号只计算左侧,丢弃结果,然后计算右侧。因此,将 i 设置为 0(并丢弃赋值返回的零值),测试 i 是否小于 100(但对由赋值返回的真实值不执行任何操作)比较),并使用最后一个表达式 (i++) 的值作为 while 的循环条件。由于 i 为 0(这是假值),因此循环体永远不会执行。

请注意,如果您使用 ++i 来代替,则在 for 情况下没有什么区别,但您的 while 版本会永远循环而不是根本不运行,因为第一次测试真实性时,i 已经增加到 1。

关于javascript - JavaScript 中的 FizzBu​​zz : the code won't execute or print at all,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27130412/

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