a == null和=== null之间有什么区别?

Sam*_*tar 7 javascript

有人可以通过解释差异来帮助我.根据我的理解,===确实匹配,但与null相比,这意味着什么?

Fel*_*ing 11

与null相比,这意味着什么?

这正是您已经说过的:它检查值是否完全正确null.


a === null如果值为,a则为true null.

请参阅规范中的严格等式比较算法:

1.如果Type(x)不同Type(y),则返回false.
2.如果Type(x)是未定义,则返回true.
3.如果Type(x)为Null,则返回true.

因此,仅当Type(a)Null为Null时,比较才返回true.

重要提示:不要将内部Type功能与typeof操作员混淆.typeof null实际上会返回字符串"object",这比帮助更令人困惑.


a == null为真,如果值anullundefined.

请参阅规范中的抽象等式比较算法:

2.如果xnullyundefined,返回true.
3.如果xundefinedynull,返回true.