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
大部分情况下,还是可以使用==或者===去判断两个值是否是相等的