javaScript中的运算符
我可以使用以下运算符:javaScript中的运算符,javascript,Javascript,我可以使用以下运算符: "wo" == ("man" || "wo"); "wo" == ("man" || "wo"); 或 如果没有,我还可以使用其他技术吗 目的是在条件中保存具有不同值的代码长度 if(orderSubType == (sdcConstants().orderSubType.UNBAR_0 || sdcConstants().orderSubType.UNBAR_00
"wo" == ("man" || "wo");
"wo" == ("man" || "wo");
或
如果没有,我还可以使用其他技术吗
目的是在条件中保存具有不同值的代码长度
if(orderSubType == (sdcConstants().orderSubType.UNBAR_0 ||
sdcConstants().orderSubType.UNBAR_00 ||
sdcConstants().orderSubType.UNBAR_OG) &&
item.source == sdcConstants().source.EXT &&
item.code == sdcConstants().CFSS.CFSS_VOICE_DUNNING){
item.state = sdcConstants().servAction.DELETE;
}else{
item.state = sdcConstants().servAction.NO_OPERATION;
}
可以使用数组并检查数组中是否存在该项。比如说,
x = ["man", "wo"];
if (x.indexOf("wo") != -1) {
alert('found');
}
我可以使用以下运算符:
"wo" == ("man" || "wo");
"wo" == ("man" || "wo");
不是因为你想那样做,不是
目的是在条件下保存具有不同值的代码长度
处理针对多个值的测试的通常两种方法是开关
或映射,但由于您的条件是不同属性和不同逻辑运算符的组合,因此不会给您带来太多好处
下面是一个使用开关(和yes的示例,在JavaScript中,这些case
语句是正确的,JavaScript不限于Java或C等常量):
在这种情况下,您可以看到为什么我不认为它在if
版本上为您购买任何东西:
if ( (orderSubType == sdcConstants().orderSubType.UNBAR_0 ||
orderSubType == sdcConstants().orderSubType.UNBAR_00 ||
orderSubType == sdcConstants().orderSubType.UNBAR_OG
)
&& item.source == sdcConstants().source.EXT
&& item.code == sdcConstants().CFSS.CFSS_VOICE_DUNNING
) {
item.state = sdcConstants().servAction.DELETE;
} else {
item.state = sdcConstants().servAction.NO_OPERATION;
}
据我所知,没有,因为“man”| |“wo”
的意思是如果“man”是假的,那么“wo”,否则“man”
。对于这样的任务,您可能希望在数组中使用~.indexOf(element),或者在包含您要检查的属性的对象上使用.hasOwnProperty。将其格式化为:如果(“wo”==“man”| |“wo”==“wo”){…}
@Qantas94Heavy:嗯,它接近我想要的。此代码不支持或运算符。它是否也适用于和操作员?x=[“人”,“我”];如果(x.indexOf(“wo”)!=-1{alert('found');}@MuneebAli:wellx
不能同时是两件事,所以我不认为使用AND运算符有什么意义。另请参见此问题:
中的运算符仅迭代。这行不通。我编辑了我的答案。这很有效。检查这把小提琴的工作情况:它很有用,谢谢。这不能用数组和indexOf在内联三元运算符中完成吗?@briosheje:如果你想创建一个不必要的数组并进行不必要的方法调用,也可以用indexOf
完成。如果这样做,则不需要三元。这是为了“目的是在条件中保存具有不同值的代码长度…”点:P@briosheje:啊,是的,我知道你在想什么:item.state=conditionsHere?sdcConstants().servAction.DELETE:sdcConstants().servAction.NO_操作代码>在这一点上,由于我们这里有很多条件,我认为您遇到了严重的可读性/调试/维护问题。