1. JS的数据类型:
标准划分:
基本类型:
number(数字类型)、string(字符串类型)、boolean(布尔值 true false)、null(空,空对象)
undefined(未定义)、Symbol(Symbol(),ES6新增)
注:Symbol() 一个匿名且唯一地一个值的
复合类型:
object(window,元素,数组,function,对象)
2. typeof 验证数据类型
number 数字
string 字符串
boolean 布尔值
undefined 未定义
function 函数
object 对象类型
symbol symbol类型
3.数据类型转换
(1)转换成数字类型
方法一: Number(val):
1.数字,原样返回
2.字符如果符合数字的规范就转换否则返回NaN
3.true为1,false为0
4.null为0
5.undefined为NaN
6.对象转换成数字,先调用对象的valueof()方法,在调用toString(),在按照上面规则进行转换
注意:1)NaN 数字中的一个特殊值
NaN not a number 这不是一个数字
NaN的数据类型是数字
NaN不等于任何值,而且不等于他自己
2)obj.valueof()把对象中的所有值取出来
3)toString() 转换成字符串
4)isNaN(要检测的数据):如果可以转成数字就返回false,不能转换成数字就返回true
方法二:
parseInt():转换成整数
parseFloat():转换成浮点数
(2)String(val):其他类型转换成字符串类型
1.除对象以外都是加上引号原样输出
2.对象类型直接调用对象的toString()把内容输出
(3)Boolean(val):转换成布尔值
1.数字转换布尔值:0转成false,非0转换成true,NaN转换成false
2.字符串:""转换成false,非空字符串转换成true
3.undefined转换成false
4.null转换成false
5.对象 转换成true
(4)隐式类型转换