undefined
是一个全局变量,它的值是 undefined
,这是一种特殊的数据类型,只有一个值。但是,null
代表什么意思呢?
MDN说:
null
的值是一个字面量。
这是什么意思呢?
我知道 "literal" 在编程中是指 "将某些固定的值写入代码中"。比如 x = 3 + 4。
这里的 3 和 4 就是整数字面量。但是我不明白 MDN 文档中的含义。
undefined
是一个全局变量,它的值是 undefined
,这是一种特殊的数据类型,只有一个值。但是,null
代表什么意思呢?
MDN说:
null
的值是一个字面量。
这是什么意思呢?
我知道 "literal" 在编程中是指 "将某些固定的值写入代码中"。比如 x = 3 + 4。
这里的 3 和 4 就是整数字面量。但是我不明白 MDN 文档中的含义。
null
,你实际输入的东西,是定义值null
的字面量,就像1
是定义值1的字面量一样。 null
值只是这样:一个值(Null类型中唯一的值),就像1是一个值(Number类型中的许多值之一)。是的,看起来像是编辑错误。应该改成类似于:值
null
是代表null或“空”值的JavaScript字面量,即没有对象值。
值
null
代表有意的缺少任何对象值。
null
是字面量,而不是像undefined
一样是全局对象属性的标识符。console.log(42)
使用字符4和2并排作为字面量来表示值42),但是值不是字面量。 - T.J. Crowdernull
是用文字null
表示的,它不像undefined
一样是全局对象的属性。” - T.J. Crowder3
或字符串字面值"hello"
是语言的元素 - 但是让你在程序中包含它们的语法 是 语言的一部分。如果这就是你的意思,那我道歉。 - nnnnnnnull
是JS中的原始类型之一。
在某些需要表示变量或引用中没有值的情况下,该原始类型被用作字面量。
然而,需要注意的是,null
的字面值具有特殊含义。
值得注意的是:
typeof null // object (bug in ECMAScript, should be null)
typeof undefined // undefined
null === undefined // false
null == undefined // true