2

这是我的代码

var something = "four";

if(
    something == "one" || 
    something == "two" || 
    something == "three" ||
    something == "five" ||
    something == "six" ||
    something == "seven"
){
    document.body.innerHTML = "<h1>yes</h1>";
}else{
    document.body.innerHTML = "<h1>no</h1>";
}

鉴于所有条件都考虑同一个变量,有没有办法简化 IF 语句?

演示

4

3 回答 3

3

尝试这个:

var something = 4;

if([1,2,3,5,6,7].indexOf(something) > -1) {
 document.body.innerHTML = "<h1>yes</h1>";
} else {
 document.body.innerHTML = "<h1>no</h1>";
}

JSFiddle:http: //jsfiddle.net/2onn6Lc2/1/

另外,请在https://codereview.stackexchange.com/上发布此类问题

于 2014-09-16T19:33:55.083 回答
0

您可以随时反转您的支票:

var something = 4;

if(
    something < 1 || 
    something == 4 || 
    something >7
){
    document.body.innerHTML = "<h1>no</h1>";
}else{
    document.body.innerHTML = "<h1>yes</h1>";
}
于 2014-09-16T19:36:04.677 回答
0
let something = "four";

if ( ["one","two","three","five","six","seven"].includes(something) ) {
    document.body.innerHTML = "<h1>yes</h1>";
} else {
    document.body.innerHTML = "<h1>no</h1>";
}
于 2021-09-09T19:28:17.803 回答