面试题答案
一键面试'5' == 5
返回true
的原因及类型转换:- 在JavaScript中,
==
是宽松相等运算符。当比较'5'
(字符串类型)和5
(数字类型)时,会发生自动类型转换。 - 字符串
'5'
会被转换为数字类型。JavaScript使用Number()
函数进行转换,Number('5')
的结果是5
,所以'5' == 5
相当于5 == 5
,因此返回true
。
- 在JavaScript中,
'5' === 5
返回false
的原因:===
是严格相等运算符。它不仅比较值,还比较数据类型。'5'
是字符串类型,5
是数字类型,数据类型不同,所以'5' === 5
返回false
。