Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用逻辑OR运算符的if语句中的多次比较在JavaScript中不起作用_Javascript - Fatal编程技术网

使用逻辑OR运算符的if语句中的多次比较在JavaScript中不起作用

使用逻辑OR运算符的if语句中的多次比较在JavaScript中不起作用,javascript,Javascript,我正在按下面的方式检查,但它不起作用。当我使用单语句时,它是有效的。i、 e(节点名称!=“活动”) 试试这个 if( NodeName !== "Active" || NodeName !== "Recently Added" || NodeName !== "Added" ) { alert(NodeName); } 试试这个 if( NodeName !== "Active" || NodeName !== "Recently Added" || NodeName !== "A

我正在按下面的方式检查,但它不起作用。当我使用单语句时,它是有效的。i、 e(节点名称!=“活动”)

试试这个

if( NodeName !== "Active" || NodeName !== "Recently Added" || NodeName !== "Added" ) {   
  alert(NodeName);
}
试试这个

if( NodeName !== "Active" || NodeName !== "Recently Added" || NodeName !== "Added" ) {   
  alert(NodeName);
}

你的逻辑是错误的。如果
NodeName
的值是
“最近添加的”
,则首先发生的是与
“活动的”
的比较,后者的计算结果为
true
(因为它们不相同)。由于第一个条件的计算结果为true,因此整个条件被视为true,并执行
警报

您需要将“OR”更改为“ands”(注意,我也删除了所有这些括号…这里不需要它们):


你的逻辑是错误的。如果
NodeName
的值是
“最近添加的”
,则首先发生的是与
“活动的”
的比较,后者的计算结果为
true
(因为它们不相同)。由于第一个条件的计算结果为true,因此整个条件被视为true,并执行
警报

您需要将“OR”更改为“ands”(注意,我也删除了所有这些括号…这里不需要它们):

节点名总是不“活动”或不“最近活动”或不“添加”。你想用

if (NodeName !== "Active" && NodeName !== "Recently Added" && NodeName !== "Added" && NodeName != null) {
    alert(NodeName);
}

节点名总是不“活动”或不“最近活动”或不“添加”。你想用

if (NodeName !== "Active" && NodeName !== "Recently Added" && NodeName !== "Added" && NodeName != null) {
    alert(NodeName);
}


此处节点名称正确出现…此处节点名称正确出现…为什么要删除
null
检查?为什么要删除
null
检查?
if (!(NodeName === "Active" || NodeName === "Recently Added" || NodeName === "Added") && NodeName != null) {
    alert(NodeName);
}