== 会执行类型转换,遵循的是下列规则:
- 如果一个运算数是Boolean,会将它转换成数字值,false为0,true是1
- 如果一个运算数是字符串,另一个是数字,会尝试把字符串转成数字
- 如果一个运算数是对象,另一个是字符串,会尝试把对象转换成字符串(toString)
- 如果一个运算数是对象,另一个是数字,会尝试把对象转换成数字
- null == undefined 返回的是true
- 如果两个运输数都是对象,比较它们引用值
- 不会把null和undefined转换成其他值
举例:
- undefined == 0 //false
- undefined == 1 //false