==
: 在判断相等前,如果两边数据类型不同,会进行强制转换,所以会发生 '' == false
被判断为true
===
: 严格相等,不会对类型进行转换,-0 === 0
判断为true,'' === false
判断为false
Object.is(value1,value2)
: ES6方法,具有===
的一些特性,Object.is(0,-0)判断为false
,Object.is(NaN,NaN) 判断为true
Object.is用到的比较规范是ES的SameValue比较规则
相等比较.png