在javascript中有一个XNOR运算符

时间:2018-06-07 13:25:20

标签: javascript bitwise-operators

我是js的新手,我想知道JS中是否有XNOR运算符。我试过了!(a^b)但它给出了奇怪的结果。例如:

var a,b="aa"; 
a^b

此代码返回true,但是,XNOR返回false。
更新
如果两个操作数是 true (与false值不同),或者两个 false (都等于:null,undefined,“” - empty,我需要返回true string-或0)

4 个答案:

答案 0 :(得分:3)

XNOR truth table

以上是XNOR的真值表。如果A和B都为FALSE或TRUE,则生成的XNOR为真。因此,在我看来,只是简单地检查相等性实际上相当于XNOR。

所以:

(a === b) = (a XNOR b)

编辑:为了适应您的条件:这应该有效:

a == b

请注意,有两个“=”,而不是三个,表示这是比较“truthy”值。

答案 1 :(得分:2)

按位xnor是:

~(a ^ b)

合乎逻辑的一个;

a === b

答案 2 :(得分:0)

试试这个(!(A ^ B)) 或者(A && B) || (!A && !B)

答案 3 :(得分:0)

尝试(a^b)==0  我认为javascript中XNOR的结果是:true^true = 0