You need to enable JavaScript to run this app. 为什么JavaScript中执行console.log(typeof 4+5)会返回number5?
优惠活动
大模型
产品
解决方案
定价
更多

为什么JavaScript中执行console.log(typeof 4+5)会返回number5?

为什么执行console.log(typeof 4+5)会返回number5
  • 首先由JavaScript运算符优先级规则决定执行顺序:typeof是一元运算符,优先级高于作为二元算术运算符的+,代码不会先计算4+5的算术结果,而是优先执行typeof 4的计算。
  • typeof 4的返回值是字符串类型的"number",此时原代码的实际计算逻辑已等价于"number" + 5。
  • 触发+运算符的字符串拼接规则:JavaScript中如果+的任意一侧操作数是字符串,会自动将另一侧的操作数隐式转换为字符串,执行字符串拼接而非算术加法。这里数字5会被隐式转为字符串"5",和前面的"number"拼接,最终得到字符串"number5"。

如果想要获取4+5计算结果的数据类型,需要给加法逻辑加上括号调整优先级,对应代码为console.log(typeof (4 + 5)),此时会先计算得到数字9,再判断类型,最终返回字符串"number"。

内容的提问来源于stack exchange,提问作者Stephen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.30 08:54:03