es5比较两个值是否相等:相等运算符(==)和严格相等运算符(===)。

缺点:

==:自动转换数据类型,

===: NaN不等于自身,以及+0等于-0。

es6新的方法Object.is来比较两个值严格相等,它与严格比较运算符(===)基本一致,不同之处只有两个:一是+0不等于-0,二是NaN等于自身。

Object.is('xixi','xixi')  //true
Object.is({}, {})  //false

+0 === -0 //true
NaN === NaN // false

Object.is(+0, -0) // false
Object.is(NaN, NaN) // true

 

 

posted on 2019-11-28 10:36  四月妹  阅读(690)  评论(0编辑  收藏  举报