ES6基础之——对比两个值是否相等Object.is()

Posted fe-cherrydlh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6基础之——对比两个值是否相等Object.is()相关的知识,希望对你有一定的参考价值。

对比两个值是否相等我们可以使用==,或者判断绝对相等使用===。它们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身以及正0等于负0
+0 == -0 //true
+0 === -0 //true
不过这两个东西是不一样的

再比如:
NaN == NaN //false
不过他们是一个东西

遇到这种情况,可以使用Object.is()方法,两个参数就是要对比的东西,比如:
Object.is(NaN,NaN) //true
Object.is(+0,-0) //false

大部分情况下,还是可以使用==或者===去判断两个值是否是相等的

以上是关于ES6基础之——对比两个值是否相等Object.is()的主要内容,如果未能解决你的问题,请参考以下文章

es6之Object扩展及内部属性的总结

web前端之es6对象的扩展

Go基础之运算符

php 对比两个数组中的值是否相等

Go语言基础之运算符

PHP 两字符串比较,值相同 对比却不相等