1.undefined:未初始化的变量,会被自动赋予 undefined 值。未声明的变量使用 typeof 检测时也会返回 undefined;
2.null表示一个空对象指针,使用typeof操作符检测时返回“object”;由于undefined派生自nul;所以alert(undefined == null) //true, console.log(undefined === null) //false.
3.Boolean 各种数据类型及对应的转换规则。
数据类型 | 转换为true的值 | 转换为false的值 |
Boolean | true | false |
String | 任何非空字符串 | “”(空字符串) |
Number | 任何非零数值(包括无穷大) | 0和NaN |
Object | 任何对象 | null |
Undefined | n/a | undefined |
4.Number : 八进制字面值第一位必需是0,然后是八进制数字序列(0-7),如果超过这个范围,前导0将会被忽略,数字按十进制解析;十六进制必需一0x开始,后跟(0-9或a-f),字母可大写,也可以小写。超过范围将会报错。
5.String: null和 undefined灭有toString()方法;使用String转换之后返回本身。
6.Object : constructor属性保存创建对象的函数;hasOwnProperty(name)检查给定的属性在当前的对象的实例中是否存在,name是一个字符串;prototypeIsEnumerable(object) 检测给定的属性是否能够使用for-in枚举;toString() 和 valueOf()返回的值通常是一样的。