Java脚本,如果条件具有多个值

时间:2018-09-27 04:22:48

标签: javascript if-statement

我从后端扮演一个角色 如果它等于“管理员” “职员” “经理” ,则应转到块的if部分。否则应转到块的其他部分。

let role = "restaurant";

if(role === "admin" || "manager" || "staff"){
  console.log("IF PART")
  console.log(role)
}
else{
  console.log("ELSE PART")
}

在这种情况下,要看是否有一部分。我的代码有什么问题?

任何帮助

非常感谢!

3 个答案:

答案 0 :(得分:1)

您的条件是否错误。就像

let role = "restaurant";

if(role === "admin" || role === "manager" || role === "staff"){
  console.log("IF PART")
  console.log(role)
}
else{
  console.log("ELSE PART")
}

答案 1 :(得分:1)

如果条件错误,则假定将role变量与要检查的角色进行比较。正如@lokesh在他的代码中提到的那样。

(role === "admin" || role === "manager" || role === "staff")

另一种方法:

let role = "restaurant";
    
if(["admin", "manager", "staff"].includes(role)){
  console.log("IF PART")
  console.log(role)
}
else{
  console.log("ELSE PART")
}

includes在大多数IE浏览器中都可用,您可以使用indexOf

答案 2 :(得分:1)

我认为,您可以按照以下方式更准确地进行操作

let role = "restaurant";

if (["admin", "manager", "staff"].indexOf(role.toLowerCase()) >= 0) {
  console.log("IF PART")
  console.log(role)
} else {
  console.log("ELSE PART")
}