本章我们将学习 JavaScript 中的 typeof, null, undefined, valueOf()
typeof 操作符用于检测变量的数据类型
typeof "John" // 返回 string
typeof 3.14 // 返回 number
typeof false // 返回 boolean
typeof [1,2,3,4] // 返回 object
typeof {name:'John', age:34} // 返回 object
JavaScript中,数组是一种特殊的对象类型,因此 typeof [1,2,3,4] 返回 object
null 关键字用于表示 "什么都没有"
null 是一个只有一个值的特殊类型,表示一个空对象引用
用 typeof 检测 null 返回是 object
可以将一个变量设置为 null 来清空
var person = null; // 值为 null(空), 但类型为对象
同时也可以设置为 undefined 来清空对象
var person = undefined; // 值为 undefined, 类型为 undefined
undefined 是一个没有设置值的变量
typeof 一个没有值的变量会返回 undefined
var person; // 值为 undefined(空), 类型是 undefined
任何变量都可以通过设置值为 undefined 来清空
person = undefined; // 值为 undefined, 类型是 undefined
null 和 undefined 的值相等,但类型不等
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true