JavaScript告诉我哪个条件被击中

时间:2015-10-01 05:01:54

标签: javascript scope conditional

如果我在JavaScript中有一个声明,如:

if(!me.a || !me.b || !me.c) {
     // I want to know which not was matched here
}

我如何知道范围内哪个条件匹配?有没有魔术师?

1 个答案:

答案 0 :(得分:7)

嗯,一种方法是&&每个条件的标识符并检查结果。

var result = (!me.a && 1) || (!me.b && 2) || (!me.c && 3);

if(result) {
    // if result is 1, then !me.a is true
    // if result is 2, then !me.b is true and !me.a is false
    // if result is 3, only !me.c is true
}