Avatar ·

JavaScript中null和undefined有什么区别以及何时使用它们?

大家好!我刚开始学习JavaScript,怎么也搞不懂null和undefined的区别。似乎两者都表示“什么都没有”,但为什么语言中会存在两个不同的值呢? 看代码示例: ```javascript let a; console.log(a); // undefined let b = null; console.log(b); // null ``` 在第一种情况下,变量已声明但未初始化——得到undefined。在第二种情况下,我自己赋值为null。但根本区别是什么?什么时候该用null,什么时候该用undefined? 我还注意到,通过==比较时它们相等,但通过===比较时则不相等: ```javascript console.log(null == undefined); // true console.log(null === undefined); // false ``` 这让我彻底困惑了。请像对新手一样解释一下:什么是什么,以及如何在代码中避免错误?提前谢谢! <<>>

主要区别:undefined — “还没有值”,null — “值被有意设为空”

在JavaScript中,undefined 和 <