javascript中有XNOR运算符吗

问题描述 投票:0回答:5

我是js新手,我想知道JS中是否有XNOR运算符。我尝试过!

(a^b)
,但结果很奇怪。例如:

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

此代码返回 true,但是 I XNOR 返回 false。
更新
如果两个操作数都是 true(与 false 值不同),或者两个都是 false(都等于:null、undefined、""-空字符串- 或 0),我需要返回 true

javascript bitwise-operators
5个回答
26
投票

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

所以:

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

编辑:根据您的条件正常工作:这应该有效:

a == b

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


18
投票

按位异或为:

~(a ^ b)

还有逻辑上的;

a === b

0
投票

尝试

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


0
投票

是不是这么简单?

!(A^B)

异或的逆。


-1
投票

试试这个

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

© www.soinside.com 2019 - 2024. All rights reserved.