首页 >web前端 >js教程 >JavaScript 中 Null 和 undefined 有什么区别?

JavaScript 中 Null 和 undefined 有什么区别?

Barbara Streisand
Barbara Streisand原创
2024-10-19 06:18:301049浏览

无效的

在 JavaScript 中,null 是一个原始值,表示故意不存在任何对象值。它是 JavaScript 的假值之一,这意味着它在布尔上下文中计算结果为 false。但是,它与undefined不同,后者表示已声明但尚未赋值的变量。

  • null 是一个特殊的原始值,但是当你使用 typeof 检查它的类型时,它返回“object”。

What is the difference between Null and undefined in JavaScript?
当期望变量保存对象但当前没有对象时,使用 null。它表示故意缺少某个值。

let person = null;  // The `person` variable explicitly has no value.

当您有意表示“没有价值”或“空”时使用。


不明确的

在 JavaScript 中,undefined 是自动分配给已声明但尚未赋值的变量的原始值。

  • undefined 是 JavaScript 中的原始类型。它指的是已经声明但未初始化的变量,它的typeof会正确反映“未定义”。
let x;
console.log(typeof x);         // "undefined"

空和未定义之间的区别

What is the difference between Null and undefined in JavaScript?
在此示例中,uninitializedVariable 未定义,因为它尚未分配任何值。
同时,objectWithNoValue 被显式设置为 null,表明它应该保存一个对象,但目前还没有。

比较

  • 松散相等 (==) null 和 undefined 松散相等,因为它们都表示“空”值。
console.log(null == undefined);  // true
  • 严格相等 (===) 它们并不严格相等,因为它们是不同的类型。
console.log(null == undefined);  // true

以上是JavaScript 中 Null 和 undefined 有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn