// JavaScript 诞生以来便如此
	typeof null === "object";
  true

在 JavaScript 最初的实现中,JavaScript 中的值是由一个表示类型的标签和实际数据值表示的。对象的类型标签是0。由于 null代表的是空指针(大多数平台下值为 0x00),因此,null 的类型标签是0typeof null也因此返回"object"。(参考来源

曾有一个ECMAScript的修复提案(通过选择性加入的方式),但被拒绝了。该提案会导致typeof null === 'null'