1、undefined类型
Undefied类型只有一个值,即特殊的undefined。在使用var声明变量但未对其进行初始化时,这个变量的值就是undefined。
Var message;
//var age 这个变量并没有声明
alert(message); // undefined 没有初始化
Alert(age);//undefined 没有声明
2、null类型
null是一个只有一个值的特殊类型。表示一个空对象引用。用typeof检测返回是object。
undefined是派生自null。undefined==null。
3、Boolean类型
只有两个字面值:true和false,但这两个值与数字值不同,因此true不一定等于1,false也不一定等于0.
要将一个值转换为对应的Boolean值,可以调用转型函数Boolean()。
4、Number类型
最基本的数值字面量格式是十进制整数,除了十进制表示外,还可以通过八进制或16进制的字面值表示。
八进制字面值的第一位必须是0,然后是八进制数字序列(0~7),如果字面值中的数值超出了范围,那么前导零将被忽略,后面的数值将被当做十进制数值解析。
十六进制字面值前两位必须是0x,后跟任何16进制数字(0~9以及A~F)。
在进行算术计算时,所有以八进制和十六进制表示的数值最终都将被转换成十进制数值。
1)浮点数值
科学技术法:3.125e7即3.125*10^7
浮点数值的最高精度是17位小数。
2)数值范围
通过 Number.POSITIVE_INFINITY 和 Number.NEGATIVE_INFINITY 得到 Infinity(正无穷)及-Infinity(负无穷)的值。 alert(Number.POSITIVE_INFINITY); //Infinity(正无穷) alert(Number.NEGATIVE_INFINITY);//-Infinity(负无穷)
isFinite()函数:参数在最小与最大值之间时会返回true。
3)NaN
即非数值。NaN与任何值都不相等,包括NaN本身。
isNaN()函数:在接收到一个值以后,会尝试将这个值转换为数值,不能转换为数值的值都会导致这个函数返回true。
isNaN(NaN) //true
isNaN(10) //false