js之三种相等比较方法

//本文参考mdn

一、三种相等比较

  • ==(非严格相等)
  • ===(严格相等)
  • Object.is (该方法在es2015被引进/es6新特性)

二、区别

  • 非严格相等 和 严格相等比较: 严格相等不进行隐式转换
    //在日常中使用全等操作符几乎总是正确的选择,附一张非严格相等隐式转换图
    js之三种相等比较方法

  • Object.is不比其它相等更严格或更宽松
    //还是看图说话
    js之三种相等比较方法

三、总结

  • 日常开发模式推荐用 === 即严格相等
  • Object.is区分 +0 和 -0 用于一些特殊场景
  • 非严格模式 在某位大佬指导下,我们都称它为js中的奇淫技巧(细细的品)