JavaScript笔记 (5.JavaScript强制类型转换)

本文最后更新于:6 个月前

强制类型转换

  • 指将一个数据类型强制转换为其他的数据类型
  • 类型转换主要指,将其他的数据类型,转换为
    String Number Boolean

将其他的数据类型转换为String

方式一:
- 调用被转换数据类型的toString()方法

1
2
3
//调用a的toString()方法
//调用xxx的yyy()方法,就是xxx.yyy()
a = a.toString();
  • 该方法不会影响到原变量,它会将转换的结果返回
  • 但是注意:null和undefined这两个值没有toString()方法,
    如果调用他们的方法,会报错

方式二:

  • 调用String()函数,并将被转换的数据作为参数传递给函数
    1
    2
    //调用String()函数,来将a转换为字符串
    a = String(a);
  • 使用String()函数做强制类型转换时,
    对于Number和Boolean实际上就是调用的toString()方法
    但是对于null和undefined,就不会调用toString()方法
    它会将 null 直接转换为 “null”
    将 undefined 直接转换为 “undefined”

将其他的数据类型转换为Number

转换方式一:
使用Number()函数

1
2
//调用Number()函数来将a转换为Number类型
a = Number(a);
    - 字符串 --> 数字
            1.如果是纯数字的字符串,则直接将其转换为数字
            2.如果字符串中有非数字的内容,则转换为NaN
            3.如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
    - 布尔 --> 数字
            true 转成 1
            false 转成 0

    - null --> 数字     0

    - undefined --> 数字 NaN

转换方式二:
- 这种方式专门用来对付字符串
- 如果对非String使用parseInt()或parseFloat()
它会先将其转换为String然后再操作

1
2
a = "123567a567px";
//调用parseInt()函数将a转换为Number
    - parseInt() 把一个字符串转换为一个整数
            parseInt()可以将一个字符串中的有效的整数内容去出来,
            然后转换为Number
    - parseFloat() 把一个字符串转换为一个浮点数
      parseFloat()作用和parseInt()类似,不同的是它可以获得有效的小数

将其他的数据类型转换为Boolean

使用Boolean()函数

1
2
//调用Boolean()函数来将a转换为布尔值
a = Boolean(a);

  • 数字 —> 布尔

    • 除了0和NaN,其余的都是true
  • 字符串 —> 布尔

    • 除了空串,其余的都是true
  • null和undefined都会转换为false

  • 对象也会转换为true


JavaScript笔记 (5.JavaScript强制类型转换)
https://www.duruofu.xyz/2023/06/05/3.软件相关/编程语言/JS/2.6 强制类型转换/
作者
DuRuofu
发布于
2023年6月5日
更新于
2024年1月5日
许可协议