常规的JavaScript数据类型的理解是基本数据类型有五种:String,Number,Boolean,null和undefined。
六个类别的数据类型又可以分成两组:原始类型(primitive type)和合成类型(complex type)
原始类型包括三种数据类型。
数值(number)
字符串(string)
布尔值(boolean)
合成类型也包括三种数据类型。
数组(array)
函数(function)
(1)原始类型
数值,字符串,布尔值分别返回number,string,boolean。
tepeof 123 //number
typeof "123"//string
typeof false//boolean
(2)函数
函数返回function
function f(){}
typeof f//function
(3)undefined
undefined返回undefined
typeof undefined//unfined
(4)其他的
typeof window//object
typeof { }//object
typeof [ ]//object
typeof null//boject
空数组([])的类型也是object,这表示在JavaScript内部,数组本质上只是一种特殊的对象。
null和undefined
(1)相似性
首先,null与undefined都可以表示“无”,含义非常相似。将一个变量赋值为undefined或null,几乎没区别。
(2)用法和含义
null表示”没有对象”,即该处不应该有值。
undefined表示”缺少值”,就是此处应该有一个值,但是还未定义。
布尔值
布尔值代表“真”和“假”两个状态。“真”用关键字true表示,“假”用关键字false表示。布尔值只有这两个值。