1.概述
JavaScript 语言数据类型共 6 种【ES5范畴】。
ES6增加第七种:Symbol
- number
- string
- boolean
- undefined
- null
- object
前三种:primitive type(原始类型)
object:complex type(合成类型),可以看做容器
object 分三个 子类型
- 狭义的对象 object
- 数组 array
- 函数 function
2. typeof 运算符
JavaScript 确认一个值属于什么类型有三种方法:
- typeof 运算符
- instanceof 运算符
- Object.prototype.toString 方法
以下是例子:
typeof 123 // "number"
typeof '123' // "string"
typeof false // "boolean"
typeof undefined // "undefined"
function f(){}
typeof f // "function"
typeof window // "object"
typeof {} // "object"
typeof [] // "object"
type null // "object"
null 类型返回 object 是历史遗留原因。
1995年的 JavaScript 第一版本没考虑到 null 这一特殊值。
3.参考链接
Axel Rauschmayer, Improving the JavaScript typeof operator