我可以将变量用于';如果';Javascript中的查询?
如果我有多个点需要使用相同的If语句,我可以使用javascript变量:我可以将变量用于';如果';Javascript中的查询?,javascript,Javascript,如果我有多个点需要使用相同的If语句,我可以使用javascript变量: var query = ((val!=='CLOSED')||(val!=='OFF')||(val!=='Off')); if query { //statement true; } 没有 您可以存储执行测试的结果并重用该结果(尽管if语句确实要求将测试放在括号中): …但如果val发生变化,则不会重新评估语句。因此,这与每次重复测试不同 不过,您可以使用函数 var query = function (val)
var query = ((val!=='CLOSED')||(val!=='OFF')||(val!=='Off'));
if query {
//statement true;
}
没有
您可以存储执行测试的结果并重用该结果(尽管if
语句确实要求将测试放在括号中):
…但如果val
发生变化,则不会重新评估语句。因此,这与每次重复测试不同
不过,您可以使用函数
var query = function (val) {
return ((val!=='CLOSED')||(val!=='OFF')||(val!=='Off'));
}
if (query(some_value)) {
//statement true;
}
当然
var query = (val!=='CLOSED' || val!=='OFF' || val!=='Off');
if (query) {
//statement true;
}
请注意,
(val!='CLOSED'| | val!='OFF'| | val!='OFF')
没有什么意义。例如,对于字符串“OFF”
,它将计算为true
您可能想要
!(val='CLOSED'| | val='OFF'| | val='OFF')
您可以,但语法需要正确:
var query = ((val!=='CLOSED')||(val!=='OFF')||(val!=='Off'));
if(query) {
//statement true;
}
请注意
查询
周围的括号,如果变量发生变化,您可以使用该函数
function checkVariable(variable) {
return ((variable !== 'CLOSED') || (variable !== 'OFF') || (variable !== 'Off'));
}
if (checkVariable(variable)) {}
若并没有,那个么只需将语句值赋给变量并再次使用它
var result = (variable !== 'CLOSED' || variable !== 'OFF' || variable !== 'Off');
if (result) {}
是的,您可以,但它将始终包含在创建查询变量时计算的值。为什么不尝试使用它而不是询问堆栈?@Martin-因为该代码不起作用,他们可能已经并且正在询问是否有其他语法可以完成这项工作。为什么不将条件缓存在变量中并使用它呢……但是
query
在OP的代码中是一个布尔值?我承认一开始我也有这种想法谢谢,我想我需要在每种情况下使用该语句,因为它在each()循环中,所以var还没有设置
var result = (variable !== 'CLOSED' || variable !== 'OFF' || variable !== 'Off');
if (result) {}