Javascript 为什么不打印出碳酸饮料?

Javascript 为什么不打印出碳酸饮料?,javascript,fizzbuzz,Javascript,Fizzbuzz,这是我的密码。我没有得到任何气泡嗡嗡声打印。我只知道数字。有人能解释一下原因吗?谢谢 printOut = ""; for (var x=1; x < 101 ; x++) { switch(x) { case((x%3) == 0): printOut+="\n"+ "Fizz" ; break; case((x%5) == 0): printOut+="\nBuzz"; break;

这是我的密码。我没有得到任何气泡嗡嗡声打印。我只知道数字。有人能解释一下原因吗?谢谢

printOut = ""; 

for (var x=1; x < 101 ; x++) {


  switch(x) {

      case((x%3) == 0):
      printOut+="\n"+ "Fizz" ;
      break;

      case((x%5) == 0):
      printOut+="\nBuzz";
      break;

      default:
      printOut+="\n" + x ;
      break;

  }

}
console.log(printOut);
打印输出=”;
对于(变量x=1;x<101;x++){
开关(x){
案例((x%3)==0):
打印输出+=“\n”+“嘶嘶”;
打破
案例((x%5)==0):
打印输出+=“\nBuzz”;
打破
违约:
打印输出+=“\n”+x;
打破
}
}
控制台日志(打印输出);

检查如何使用switch语句:


在开关行中,x是表达式,((x%5)==0)是值。我想你的意思是要做一些if/else语句。

你不正确地使用了
开关。每个
案例(值):
基本上应该在
x
等于
value
时运行

要解决此问题,只需完全删除
开关
语句,并用
if
s替换每个
案例

for (var x = 1; x < 101; x++) {
    if ((x % 3) == 0)
        printOut += "\n" + "Fizz";
    else if ((x % 5) == 0)
        printOut += "\nBuzz";
    else
        printOut += "\n" + x;
}
for(变量x=1;x<101;x++){
如果((x%3)==0)
打印输出+=“\n”+“嘶嘶”;
如果((x%5)==0),则为else
打印输出+=“\nBuzz”;
其他的
打印输出+=“\n”+x;
}

您试图将
x
的值与值为
true
false
的表达式相匹配。您可以在开关中传递true,开关将与计算结果为true的第一个case语句“匹配”

虽然这种sort-a有效,但我建议只使用if/else语句。这对数字30不起作用,对于X%3和X%5都是如此。它将首先与x%3匹配,然后停止

printOut = ""; 

for (var x=1; x < 101 ; x++) {


  switch(true) {

      case((x%3) == 0):
      printOut+="\n"+ "Fizz" ;
      break;

      case((x%5) == 0):
      printOut+="\nBuzz";
      break;

      default:
      printOut+="\n" + x ;
      break;

  }

                             }
console.log(printOut);
打印输出=”;
对于(变量x=1;x<101;x++){
开关(真){
案例((x%3)==0):
打印输出+=“\n”+“嘶嘶”;
打破
案例((x%5)==0):
打印输出+=“\nBuzz”;
打破
违约:
打印输出+=“\n”+x;
打破
}
}
控制台日志(打印输出);

这不是
switch/case
的正确语法:具体来说,
case
只接受与
switch
子句中的表达式进行比较的值。您不能像这样动态计算
案例的值。谢谢!这很有帮助!谢谢你的帮助!