否则/如果循环JavaScript

时间:2017-09-16 03:55:16

标签: javascript loops if-statement

我对所有这一切都很新手,而且我在课堂上学习它。我的任务是写一个Else / If循环,我们显示1-100。如果整数可被3显示" play"整除,如果可被4显示"球",如果可被3和4整除,则显示" Play Ball&#34 ;,任何东西else只是整数。 我的代码在这里工作,但我不能让我的3和4显示" Play Ball",除非我自己运行它。希望这是有道理的,这就是我所拥有的:

for (var i = 1; i <= 100; i++) {

  if (i % 3 === 0) {
    console.log('Play');
  } else if (i % 4 === 0) {
    console.log('Ball');
  } else if (i % 3 === 0 && i % 4 === 0) {
    console.log('Play Ball');
  } else {
    console.log(i);
  }
}

4 个答案:

答案 0 :(得分:1)

由于当第三个语句(&amp;&amp;)为真时,第一个if语句将始终为true,因此您永远不会进入第三个语句。尝试重新排序:

for (var i = 1; i <= 100; i++) {

      if (i % 3 === 0 && i % 4 === 0) {
        console.log('Play Ball');
      } else if (i % 4 === 0) {
        console.log('Ball');
      } else if (i % 3 === 0) {
        console.log('Play');
      } else {
        console.log(i);
      }

}

答案 1 :(得分:1)

您只需将此i % 3 === 0 && i % 4 === 0条件移至顶部:

&#13;
&#13;
for (var i = 1; i <= 100; i++) {

  if (i % 3 === 0 && i % 4 === 0) {
    console.log('Play Ball');
  } else if (i % 3 === 0) {
    console.log('Play');
  } else if (i % 4 === 0) {
    console.log('Ball');
  } else  {
    console.log(i);
  }
}
&#13;
&#13;
&#13;

答案 2 :(得分:0)

  

3和4显示

上述声明表示,当 BOTH 条件满足时,只需要执行某项任务。在这种情况下,您需要使用&&

   if ( (i % 3 === 0) && (i % 4 === 0) ) {
    console.log('Play Ball');
  }

何时使用else和/或else if

我们举一个例子,你有一个数字,它不能被3和4整除,你不关心那个数字。然后,您只需使用else将所有类别归入其中。

现在,还有另一个场景,当你输入了数字时,它又不能被3和4整除。但是,如果它只能被3或4整除,你可能想看看。然后,你使用{{1你可以把条件放在哪里检查。

else if

答案 3 :(得分:0)

您可以将3和4整除的支票移到顶部:

for (var i = 1; i <= 100; i++) {
  if (i % 3 === 0 && i % 4 === 0) {
     console.log('Play Ball');
  } else if (i % 3 === 0) {
     console.log('Play');
  } else if (i % 4 === 0) {
    console.log('Ball');
  } else {
    console.log(i);
  }
}