简介
JavaScript中的每一个变量都属于一种数据类型,JavaScript中共有6种数据类型,(ES6中又新增了一种Symbol类型)
- number:数值类型,整数和小数
- string:字符串
- boolean:布尔类型
- undefined:未定义或者不存在
- null:表示空值
- object:对象,各种值组成的集合
通常,number,string,boolean这三种合称为原始类型。对象称为合成类型,因为对象通常是一个或者多个其他类型的值的合成。
对象又可以分成三个子类型:
- 狭义的对象(object)
- 数组(ArrayList)
- 函数(function)
typeof运算符
JavaScript确认一个值类型的三种方法
- typeof运算符
- instanceof运算符
- Object.prototype.toString方法
typeof运算符可以返回一个值的数据类型,分别为:number,boolean,string,function,undefined,object
- typeof null 返回 “object”
- [] 返回object
null undefined 和boolean
null和undefined的区别:在JavaScript中null表示空,转化为数字是0,undeined表示未定义,转化为数字之后是NaN。在比较时,null == undefined返回的是true。
Boolean
在JavaScript中如果预期某个位置是布尔类型的值,就会将这个位置现有的值自动转化为Boolean格式,转化规则除了下面的六种情况,其他都转化为true
- undefined
- null
- false
- 0
- NaN
- ""或者''(空字符串)
此外 空数组[]和空对象{}的值都是true