原始数据类型(基本类型)(7种)
Number | 整数,浮点数,NaN | 0(默认值) | Number(typeof类型) |
String | 任何加了引号的都是字符串 | "" | String |
Boolean | 布尔值 | false | Boolean |
Undefined | 声明了变量,但是没有赋值 | undefined | Undefined |
Null | 声明变量为空值 | null | Object |
symbol(ES6) | - | - | - |
bigint (ES10) | - | - | - |
引用数据类型(1种)
Object | function、array、object | - | Object |
数据类型检测方法
typeof | 适用于检测基本类型和函数对象 |
instanceof | - |
Object.prototype.toString | - |
constructor | - |
duck type | - |
注意:使用isNaN()函数来判断某个值是否是NaN
转换方法:
Number() | 纯数字的字符串,转成对应数字 |
parseInt() | 以数字开头的字符串,转成对应的整数数字 |
parseFloat() | 以数字开头的字符串,转成对应的浮点数数 |
-、*、/、== | 数字型,隐式转换 |
toString() | 字符串,方法 |
String() | 字符串 |
字符串+任何类型 | 字符串(隐式转换) |
Boolean() | 布尔值(代表空、否定的值会被转换为false,其余的会被转换为true) |
true | 对应数字1 |
false | 对应数字0 |
null | 对应数字0,对应布尔值false |
undefined | 对应数字NaN,对应布尔值false |
"" | 对应布尔值false |
0 | 对应布尔值false |
NaN | 对应布尔值false |