if语句中的javascript两个条件

时间:2017-04-04 22:30:30

标签: javascript

我正在尝试编写一个代码来检查if语句中的两个条件,但没有运气。

for(var num = 1; num<=100;num +=1)
{if (num % 3==0) and (num % 5==0) console.log("fizzbuzz");
    else if (num % 3==0) console.log("fizz");
    else if(num % 5==0) console.log("buzz");
    else console.log(num);}

3 个答案:

答案 0 :(得分:2)

首先,将and更改为&&
此外,您的if语句没有这样的括号:

for(var num = 1; num<=100;num +=1){
    if ((num % 3==0) && (num % 5==0)) console.log("fizzbuzz");
    else if (num % 3==0) console.log("fizz");
    else if(num % 5==0) console.log("buzz");
    else console.log(num);
}

然后它应该像魅力一样工作! 你也需要缩进。

答案 1 :(得分:1)

使用&&代替

for (var num = 1; num <= 50; num += 1) {
  if (num % 3 == 0 && num % 5 == 0) console.log("fizzbuzz");
  else if (num % 3 == 0) console.log("fizz");
  else if (num % 5 == 0) console.log("buzz");
  else console.log(num);
}

答案 2 :(得分:1)

  1. 压痕。如果您使用IDE(如webstorm),则应该有一个自动格式化代码的选项。仅供参考:缩进在一段时间内理解您自己的代码时起着非常重要的作用(例如,在您编写之后:)。)
  2. 我不会称它为js因为有逻辑AND运算符:&&,而不是and。乍一看,它甚至可以被视为伪代码的一部分,坏伪代码
  3. if语句具有if (condition) operator之类的结构,因此当您想要检查多个条件时,应使用括号括起它们:if (condition1 && condition2 && ... && conditionN)。所有条件最终都等同于评估后检查的单个条件。
  4. 当然,if语句允许用大括号包裹运算符:if (condition) some operator;。但如果你写if (condition) {operator},它更具可读性和可理解性。例如,当您更改代码并希望添加更多运算符时,它会因一些令人困惑的错误而更加安全。假设你想写这样的smth:
  5. if(everythingIsOk)informUser;

    如果一切正常,我们假设你想添加一条消息。你可以这样写:

    if (everythingIsOk)
        informUser;
        writeMessage;
    

    在上面的示例中,您使程序仍然编写消息,因为它是一个单独的指令。如果你最初编写if (everythingIsOk){informUser},那么在这种特殊情况下添加一条必须执行的指令会更容易。更重要的是,它更具可读性。

    您可能会感到惊讶,但以下内容也是有效的:

    if (everythingIsOk);
    

    以下内容更具可读性,因为至少它让人们认为你没有忘记中间某处的建筑:

    if (everythingIsOk){}
    

    最后,如果你想强调在某些情况下不应该做什么,那就是方法(只是fyi):

    if (everythingIsOk){/* Do nothing, no code here is not a mistake! */}
    

    因此,如果您这样编写代码,您的代码将更具可读性:

    for (var num = 1; num <= 100; num += 1) {
        if ((num % 3 == 0) && (num % 5 == 0)) {
            console.log("fizzbuzz");
        } else if (num % 3 == 0) {
            console.log("fizz");
        } else if (num % 5 == 0) {
            console.log("buzz");
        } else {
            console.log(num);
        }
    }
    
    1. 我建议你至少阅读一些你能更准确地学习的例子。