JS双等判断

JS双等判断

双等 ==

img

  • N表示ToNumber操作,即将操作数转为数字。

  • P表示ToPrimitive操作,即将操作数转为原始类型的值。

    toString()方法用来得到对象的一段文字描述;而valueOf()方法用来得到对象的特征值。

布尔值与其他类型的值作比较时,布尔值会转化为数字

1
2
true -> 1
false -> 0

字符串和数字做==运算时,需要使用ToNumber操作

当一个对象与一个非对象比较时,需要将对象转化为原始类型

在运算过程中,所有类型的值都有一种向数字类型转化的趋势。

  • undefined == null,结果是true。且它俩与所有其他值比较的结果都是false
  • String == Boolean,需要两个操作数同时转为Number。
  • String/Boolean == Number,需要String/Boolean转为Number。
  • Object == Primitive,需要Object转为Primitive(具体通过valueOftoString方法)。