时间:2021-05-25
三重相等运算符 === 严格检查2个值是否相同:
但是,ES2015规范引入了 Object.is(),其行为与严格的相等运算符几乎相同:
主要问题是:什么时候使用 Object.is() 代替严格的相等性检查?让我们找出答案。
1.严格相等检查操作符
首先,让我们快速回顾一下严格的相等运算符是如何工作的。
当两个值的类型相同且持有相同的值时,严格相等检查运算符的计算结果为 true。
例如,以下原始值是相等的,因为它们是相同的类型且具有相同的值:
严格相等运算符不执行类型的强制转换,即使操作符持有合理的相同值,但是不同类型的操作符,它们也不是严格相等的:
对对象执行严格相等检查时,对象仅与自身严格相等:
即使2个对象的属性和值完全相同,它们的值也不同:
以上比较方案在 Object.is(valueA,valueB) 中的工作原理完全相同。
严格相等检查和 Object.is() 之间的区别在于,如何处理 NaN 和如何处理负零 -0。
首先,NaN(非数字)并不严格等于任何其他值,即使使用另一个 NaN:
其次,严格相等运算符不能将 -0 与 +0 区分开:
严格相等运算符使用严格相等比较算法。http://,作者:Dmitri Pavlutin,翻译:公众号《前端全栈开发者》
到此这篇关于详解JavaScript中的Object.is()与"==="运算符总结的文章就介绍到这了,更多相关JavaScript中的Object.is()与"==="运算符内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
javascript基础教程算术运算符运算符运算符说明示例示例说明+加法x+y如果x为整数2,y为整数5,x+y等于7如果x为字符串"text1",y为字符串"
Python中的运算符什么是运算符?举个简单的例子4+5=9。例子中,4和5被称为操作数,"+"称为运算符。1.求幂运算符在Java中如果我们想对一个数进行求幂
C++中运算符&和&&、|和||的详解及区别简介:&&是逻辑与运算符,||是逻辑或运算符,都是逻辑运算符,两边只能是bool类型&与|既可以进行逻辑运算,又可以
1、作用:typeof运算符返回一个用来表示表达式的数据类型的字符串。可能的字符串有:"number"、"string"、"boolean"、"object"、
JavaScript中的运算符有很多,主要分为算术运算符,等同全同运算符,比较运算符,字符串运算符,逻辑运算符,赋值运算符等。这些运算符都有一些属于自己的运算规