在JavaScript中是null对象吗?

c4i*_*4il 12 javascript null

可能重复:
javascript中的空对象

嗨,我在JavaScript中读过关于null的这个帖子,但我对null现在的身份感到非常困惑.

众所周知,由于语言设计错误typeof(null)评估,而ECMA声明null为.objectThe Null Type

   8.2 The Null Type
   The Null type has exactly one value, called null.
Run Code Online (Sandbox Code Playgroud)

那么为什么人们一直说这null是一个对象呢?

有人说null是一个单例对象.那是每个人如何在JavaScript中看到null吗?

Ant*_*lls 11

Null是没有物体.未定义表示尚未分配,null表示它已被指定为空.

Null实际上不是一个单例对象,因为取消引用它会导致错误; for (var x in null)会给你一个错误.回想一下指针的日子; null是指针未指向对象时的值.


Dan*_*llo 7

不,null是为数不多的原始类型之一(其他类型是数字,字符串,布尔值和未定义).其他所有东西都是一个对象,包括函数,数组和正则表达式.数字,字符串和布尔值通常被称为"类似对象",因为它们有方法,但它们是不可变的.另一方面,对象是可变的.