MST

星途 面试题库

面试题:JavaScript自动类型转换在比较运算中的应用

请解释在JavaScript中,`'5' == 5` 为什么返回 `true`?这里发生了怎样的自动类型转换?同时,分析 `'5' === 5` 返回 `false` 的原因。
20.7万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

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