我试图运行此代码。
var is_null = null;
console.log(typeof is_null);
为什么'is_null'在我在控制台中观看时向我显示对象。 Null如何成为一个对象。在Javascript中Null是一个对象吗?请告诉我它是否是一个错误或它背后有一些历史。
Null不是任何语言的对象。那么为什么Null是一个Object或者在JavaScript中显示为Object(在控制台中)?
答案 0 :(得分:0)
伙计们,我在这里看到了什么。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof
在JavaScript的第一个实现中,JavaScript值表示为类型标记和值。对象的类型标记为0. null表示为NULL指针(在大多数平台中为0x00)。因此,null为0作为类型标记,因此返回值为伪类型。 (参考)
针对ECMAScript提出了一项修正案(通过选择加入),但遭到拒绝。它会导致typeof null ==='null'。
// This stands since the beginning of JavaScript
typeof null === 'object';
有人可以解释一下吗?因为我没有完全理解。