微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript的double equals==是否总是对称的?

如何解决JavaScript的double equals==是否总是对称的?

| 在很多情况下,JavaScript的类型强制相等运算符不是可传递的。例如,请参阅“ JavaScript相等性传递性很奇怪”。 但是,有没有ѭ0不对称的情况?也就是说,where1ѭ是
true
b == a
false
?     

解决方法

在Javascript中,
==
总是对称的。 规格说明:   注2:相等运算符   保持以下不变式:         
A != B
等于
!(A == B)
。   
A == B
等同于
B == A
,除了按   
A and  B
。        ,它应该是对称的。但是,在某些版本的IE中存在不对称的情况:
window == document; // true
document == window; // false
    ,实际问题(运算符对称)的答案是肯定的。 ECMA-262规范明确指出: 注2:相等运算符维护以下不变式:
A != B
等于
!(A == B)
A == B
等同于
B == A
,除了按of16ѭ和
B
的求值顺序。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。