javascript确定哪个OR语句触发了if语句
我有这样一个条件(这非常简单,它们实际上是事件):javascript确定哪个OR语句触发了if语句,javascript,conditional,Javascript,Conditional,我有这样一个条件(这非常简单,它们实际上是事件): 如何确定哪个var触发了if?执行if(a)else if(b)在这里不是一个很好的选项,因为它会导致大量重复代码。您可以尝试使用返回第一个真条件索引的函数,或者如果所有条件都为假,则使用-1: var conditions = []; conditions.push(a); conditions.push(b); conditions.push(c); conditions.push(d); // ... var triggerer =
如何确定哪个var触发了if?执行if(a)else if(b)在这里不是一个很好的选项,因为它会导致大量重复代码。您可以尝试使用返回第一个真条件索引的函数,或者如果所有条件都为假,则使用-1:
var conditions = [];
conditions.push(a);
conditions.push(b);
conditions.push(c);
conditions.push(d);
// ...
var triggerer = (function(){
for(var i = 0; i < conditions.length; i++){
if(conditions[i]){ return i; };
}
return -1;
})();
if(triggerer != -1){
// Do something with conditions[triggerer]
}else{
// Do something when everything is false
}
var条件=[];
条件。推(a);
条件。推(b);
条件。推(c);
条件。推(d);
// ...
变量触发器=(函数(){
对于(变量i=0;i
将条件存储在数组中,并在循环中检查:
var values = [a, b, c, d];
for(var i = 0; i < values.length; i++) {
if(!values[i]) {
//...
// `values[i]` is the *first* condition that satisfies the `if` statement.
break;
}
}
var值=[a,b,c,d];
对于(变量i=0;i
您是只需要一个变量,还是需要对所有的变量执行操作!var
是否为真?如果!a
是正确的,但也是正确的!c
,两者都需要吗?你想用这种方式简化什么?如果(a)或者(b)导致大量重复的代码,为什么会出现呢?我的JS.Typo中没有或者操作符。我需要对所有不匹配的进行处理。
var values = [a, b, c, d];
for(var i = 0; i < values.length; i++) {
if(!values[i]) {
//...
// `values[i]` is the *first* condition that satisfies the `if` statement.
break;
}
}