ECMAScript中有5种简单数据类型(即基本数据类型):Undefined、Null、Boolean、Number、String
和1种复杂数据类型--Object
Undefined类型:
- 只有一个值,即Undefined
- 在使用var声明变量后但未对其进行初始化时,这个变量的值就是Undefined
- 对于未声明的变量只能执行一项操作,即使用typeof操作符检测其数据类型,返回值为"Undefined"
Null类型:
- Null类型也只有一个值null
- 从逻辑角度来看,null表示一个空对象指针,所以用typeof操作符来检测会返回"Object"
- 如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为null使之成为空对象的指针,而且也助于进一步区分null和undefined
Boolean类型 :
- Boolean类型包括两个值:true和false
- 转型函数Boolean()可以将值转换为对应的Boolean值,转换规则见书P26,注意String类型的转换
Number类型 :
- 包括整数、浮点数、NaN非数值
- 方法函数isNaN(),需一个参数,可为任意类型,作用是确定这个参数是否“不是数值”
- 转换方法Number()函数,规则见P30,需要注意的是:
- 如果字符串中只包含数字,则将其转换为十进制数值,前端的0会被忽略
- 如果字符串为空,转换为0
String类型 :
- 注意一个函数方法toString(),调用时参数一般为空,默认以十进制来转换,参数值可以为2,8,10,16分别表示按相应的进制进行转换
Object类型 :
- 对象就是Object类型的实例,而在ES中对象是一组数据和功能的集合
- 语法 var o = new Object();
- 可以向Object类型的实例添加属性和方法,Object类型默认内置的属性和方法见P35,需要注意以下三个方法
- constructor:用于保存当前对象,即构造函数
- toString():返回对象字符串表示
- valueOf():返回对象的字符串、数值或布尔值表示,通常与toString()返回值相同