Skip to content
📁 标签
JavaScript

typeof null

先说结果,是Object

js
typeof null // object

历史上的BUG

这是JavaScript中的是一个Bug

在第一个版本的时候,所有值都储存在32位的单元中,每个单元包含一个小的类型标签(占1-3bits),剩下的位表示真实值。

类型
000Object
001int
010float
100string
110boolean

null是机器码,引用了一个空的对象,标记为0,最终类型是Object

20230203165743

曾经有个将null的提案...

js
typeof null === 'null'

历史讨论快照

判断是否null

js
Object.prototype.toString.call(null); // [object Null]

参考资料