为什么 javascript `var undefined` 没问题,但 `var null` 抛出错误

why javascript `var undefined` is OK but `var null` throw error

为什么浏览器会为 var null; 抛出错误?

我正在阅读 Javascript Garden-undefined 并且我知道 undefined 是一个不同于 null 的全局变量。

但我很好奇为什么它在执行 var null;
时抛出错误 反之,当var Number=123var Boolean=123var Object=123var undefined=123(虽然没用)等时,就可以了。

据我所知,null不是JavaScript中的保留字和关键字。应该是原始类型。

varnull 的关系如何?

区别在于 nullreserved identifierundefined 不是。

来自文档:

The literals null, true, and false cannot be used as identifiers in ECMAScript.

这是语法定义的一部分,而全局变量只是您可以(通常)覆盖的东西。