隐式类型转换
当不同的数据类型之间进行运算或比较时,ECMAScript 自动将一个数据类型转换成另一个数据类型,以满足运算或比较的需求。
数值运算中的隐式转换
在数值运算中,如果操作数是非数值类型,ECMAScript 会自动将其转换为数值类型。
逻辑运算中的隐式转换
在逻辑运算中,ECMAScript 将非布尔值转换为布尔值。
比较运算中的隐式转换
- 对象类型的比较,引用地址相同,则为 true
- null == undefined,值为 true
- NaN == NaN,值为 false
- 其他值的比较,先转换成数字类型,再进行比较
字符串连接中的隐式转换
当一个操作数是字符串时,ECMAScript 会将其他非字符串操作数转换为字符串,然后进行字符串拼接。