MST

星途 面试题库

面试题:JavaScript类型转换中等难度题

在JavaScript中,以下代码输出什么:`console.log(1 + '2' + true)`,请解释原因并说明涉及到哪些类型转换规则。
12.9万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
  1. 输出结果
    • 输出为 "12true"
  2. 原因及类型转换规则
    • 在JavaScript中,当+运算符两边的操作数类型不同时,会发生类型转换。当数字与字符串进行+运算时,数字会被转换为字符串,然后进行字符串拼接。
    • 首先1 + '2',数字1会被转换为字符串"1",然后与字符串'2'进行拼接,结果为"12"
    • 接着"12" + true,布尔值true会被转换为字符串"true",再与"12"进行拼接,最终结果为"12true"
    • 这里涉及的类型转换规则是:数字转字符串(Number 类型转为 String 类型)以及布尔值转字符串(Boolean 类型转为 String 类型)。在JavaScript中,true转字符串为"true"false转字符串为"false",数字转字符串是将数字的文本表示作为结果字符串。