一、简单数据类型

A005-原始值类型及其转换 - 图1

二、关于 Undefined

Undefined类型,有且只有一个值,即 unudefined

三、其他类型转 Boolean

数据类型 转为 true的值 转为 false 的值
Undefined / undefined
Null / null
Number 任何 0 数值(包括 -0) 0、-0
String 任何非空字符串(包括 ‘0’、’false’) 空字符串

转换方式:可以使用 Boolean函数和双重非运算符!!

  1. let a = '0';
  2. a = Boolean(a);
  3. // true
  4. let b = null;
  5. b = !!b;
  6. // false

四、其他类型转 Number

  • UndefinedNullBoolean | 类型 | 转换结果(转为 Number 类型) | | —- | —- | | Undefined | NAN | | Null | 0 | | Boolean | 0 或 1 |
  • String | 转换前的string | 例子 | 使用 Number() 转换 | 使用 parseInt、parseFloat转换 | | —- | —- | —- | —- | | 包含数字的字符串 | ‘123xyz’ | NAN | 123 | | 不包含数字的字符 | ‘abc’ | NAN | NaN | | 只包含数字的字符,且没有小数点 | ‘0123’ | 有效整数,此处为 123 | 123 | | 除数字外,只包含一个小数点 | ‘001.2’ | 有效浮点数,此处为 1.2 | 1(parseInt) 1.2(parseFloat) | | 除数字外,包含多个小数点 | ‘001.2.3’ | NAN | 1(parseInt) 1.2(parseFloat) |
  • 转为数据类型为 Number 的 3 个函数:Number()parseInt()parseFloat()
  • pareIntparseFloat转换的大致过程:先将数据转为 String类型,再根据得到的字符串,转换为有效数字

关于转换的一些个例

parseInt(0.0000005)

  1. parseInt(0.0000005) // 5
  2. // step 1: String(0.0000005)

parseInt 先将 0.0000005,转为字符串,得到 5e-75e-7的有效数字,为5。即得到最终的结果。

参阅文档