If I have a statement in JavaScript like:
if(!me.a || !me.b || !me.c) {
// I want to know which not was matched here
}
How do I know which conditional was matched inside the scope? Is there any magic operator?
If I have a statement in JavaScript like:
if(!me.a || !me.b || !me.c) {
// I want to know which not was matched here
}
How do I know which conditional was matched inside the scope? Is there any magic operator?
Well, one way is to &&
an identifier with each condition and check the result.
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
}