== 操作符的强制类型转换规则

90 阅读1分钟
  • (1)字符串和数字之间的相等比较,将字符串转换为数字之后再进行比较。

  • (2)其他类型和布尔类型之间的相等比较,先将布尔值转换为数字后,再应用其他规则进行比较。

  • (3)null 和 undefined 之间的相等比较,结果为真。其他值和它们进行比较都返回假值。

  • (4)对象和非对象之间的相等比较,对象先调用 ToPrimitive 抽象操作后,再进行比较。

  • (5)如果一个操作值为 NaN ,则相等比较返回 false( NaN 本身也不等于 NaN )。

  • (6)如果两个操作值都是对象,则比较它们是不是指向同一个对象。如果两个操作数都指向同一个对象,则相等操作符返回 true,否则,返回 false。