繁体   English   中英

fizzBuzz count++ 在 if/else 语句中不起作用

[英]fizzBuzz count++ doesn't work in if/else statement

var output = []; 
var count = 1;

function fizzBuzz() {

    if (count % 5 === 0 && count % 3 === 0) {
        output.push("FizzBuzz");
    } else if (count % 5 === 0) {
        output.push("Buzz");
    } else if (count % 3 === 0) {
        output.push("Fizz");
    } else {
        output.push(count++;);
      
    }
//count++;//
    
  console.log(output);
    
}

count++ 在 else 语句中不起作用。 如果我从 else 语句中取出它并将 count 放入 else 中,它会如何工作。 原因是什么?

要修复该错误,您可以简单地移动 count++; 声明到 function 的末尾,如下所示:

function fizzBuzz() {
if (count % 5 === 0 && count % 3 === 0) {
    output.push("FizzBuzz");
} else if (count % 5 === 0) {
    output.push("Buzz");
} else if (count % 3 === 0) {
    output.push("Fizz");
} else {
    output.push(count);
}
count++;
console.log(output);}

代码中存在一个错误,导致计数变量在每次迭代结束时不递增。 这意味着 function 只会处理第一个数字然后停止。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM