Menu
CoddyTech

类型强制转换

本课属于 Coddy JavaScript 学习旅程的“基础知识”单元。第 22 课,共 77 课。

JavaScript 中的类型强制转换是指将值从一种数据类型自动转换为另一种数据类型。这种转换可能会在某些操作中隐式发生,也可能会在你使用 String()、Number() 或 Boolean() 等函数时显式发生。

使用宽松相等运算符 ==,或对不同类型进行操作时,例如将数字与字符串相加,通常会发生隐式类型转换。

例如:

let result = 5 + "5";
// 值为 "55",因为数字 5 被隐式转换为字符串 "5",然后进行拼接。
let result = true == 1;
// 结果为 true,因为布尔值 true 被隐式转换为数字 1。

可以使用内置函数进行显式类型转换:

  • String(value) 会将一个值转换为字符串
  • Number(value) 会将一个值转换为数字
  • Boolean(value) 会将一个值转换为布尔值

例如:

let num = "123";
let str = Number(num) + 7; // 值为 130
console.log(str); 
let bool = true;
let numBool = Number(bool); // 存储的值为 1

理解类型强制转换对于编写正确的 JavaScript 代码和避免意外结果至关重要。

challenge icon

挑战

入门

给定一段包含多个不同类型变量的代码。

你的任务是执行类型转换并打印结果:

  1. 将数字 num 转换为字符串,并将其存储在名为 a 的变量中。
  2. 将布尔值 bool 转换为数字,并将其存储在名为 b 的变量中。
  3. 将字符串 str 转换为数字,并将其存储在名为 c 的变量中。
  4. 将 num 和 str 拼接,执行隐式类型转换,并将结果存储在名为 d 的变量中。

前三项任务请使用显式类型转换函数(String()、Number()),并观察最后一项任务中的隐式类型转换。

亲手试试

// 给定的变量
let num = 42
let bool = false
let str = "7"

// 在下方输入你的代码


// 不要修改下面这行代码
console.log(`a = ${a}`)
console.log(`b = ${b}`)
console.log(`c = ${c}`)
console.log(`d = ${d}`)
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: JavaScript 在线编译器