typeof null
先说结果,是Object
js
typeof null // object历史上的BUG
这是JavaScript中的是一个Bug
在第一个版本的时候,所有值都储存在32位的单元中,每个单元包含一个小的类型标签(占1-3bits),剩下的位表示真实值。
| 值 | 类型 |
|---|---|
| 000 | Object |
| 001 | int |
| 010 | float |
| 100 | string |
| 110 | boolean |
null是机器码,引用了一个空的对象,标记为0,最终类型是Object

曾经有个将null的提案...
js
typeof null === 'null'判断是否null
js
Object.prototype.toString.call(null); // [object Null]