面试题答案
一键面试-
'5' + 2
的结果分析:- 在 JavaScript 中,
+
运算符有两种作用,既可以用于数值相加,也可以用于字符串拼接。 - 当
+
运算符的其中一个操作数是字符串时,会发生隐式类型转换,将另一个操作数转换为字符串,然后进行字符串拼接。 - 这里
'5'
是字符串,所以2
会被隐式转换为字符串'2'
,然后进行字符串拼接,结果就是'52'
。
- 在 JavaScript 中,
-
'5' - 2
的结果分析:-
运算符是减法运算符,只适用于数值运算。- 当
-
运算符的操作数中有非数值类型时,JavaScript 会尝试将操作数隐式转换为数值类型。 - 这里
'5'
会被隐式转换为数值5
(因为'5'
是一个有效的数字字符串,可以被顺利转换),然后进行数值减法运算5 - 2
,结果就是3
。
综上所述,这两种情况分别体现了
+
运算符的字符串拼接特性以及-
运算符的数值运算特性,同时涉及到 JavaScript 隐式类型转换规则,即根据运算符的需求将操作数转换为合适的类型。