关于javascript:undefined是什么

咱们写在 JavaScript 代码中的 undefined(它不是字面量), 并不是 undefined 值自身. 而是一个局部变量或是全局对象的一个属性. 但大部分时候它们的值是 undefined.
NaN 和 Infinity 也同理.

window.undefined === undefined;    // undefined 是一个全局变量.
// true

{
    let undefined;                    // undefined 不是关键字也不是字面量.
    window.undefined === undefined;   // 它们的值都是 undefined.
}
// true

{
    let undefined = 1;
    window.undefined === undefined;   // 局部变量 undefined 的值为1, 所以不相等.
}
// false

window.undefined = 1;
{
    let undefined;
    window.undefined === undefined;   // 全局变量 undefined 的值不能扭转, 始终为 undefined, 所以相等.
}
// true

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理