检测数据类型
typeof
- typeof只能准确检测 基本数据类型
- typeof是 操作符 不是 函数
语法
- typeof n
- typeof(n)
返回值
以字符串的形式返回该变量保存的数据类型
typeof工作原理
- 每一个数据在内存中都是二进制存储
- js内存中, 前三位表示数据的数据类型, 后面是数据本身
- typeof通过分辨前三位来检测数据类型
- 000: 对象; 010: 浮点数; 100: 字符串; 110: 布尔; 1: 整数;
typeof对数据类型的返回值
- 数值类型 -> 'number'
- 字符串类型 -> 'string'
- 布尔类型 -> 'boolean'
- Undefined -> 'undefined'
- 函数类型 -> 'function'
- Null 对象 数组 时间 正则 -> 'object'
数据类型转换
转数值
- Number()
- 取正负
- 非加法的数学运算
- parseInt()
- parseFloat()
转字符串
- String()
- toString()
- 字符串拼接
转布尔
Boolean()
- 只有五个返回值为false
- 数值 0
- 数值 NaN
- 空字符串 ''
- undefined
- null
运算符
- 算数运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 自增自减运算符
算数运算符
+-*/%**
赋值运算符
=+=-=*=/=%=
比较运算符
><>=<======!=!==
逻辑运算符
&&||!
自增自减运算符
++i --ii++ i--
检测数字
- isNaN
- Number.isNaN
- Object.is()