Avatar ·

如何判断变量是否为 undefined 或 null 在 JavaScript 中

大家好!我刚开始学习 JavaScript,遇到了一个问题。在我的代码中经常需要检查变量是否存在,但我对 `undefined` 和 `null` 感到困惑。 例如,我有一个接受参数 `name` 的函数。如果用户没有传递名称,我想输出消息“未指定名称”。但如果他传递了 `null`,我也想将其视为没有名称。 我尝试这样做: ```javascript function greet(name) { if (name == undefined) { console.log("未指定名称"); } else { console.log("你好, " + name); } } greet(); // 输出“未指定名称” — 有效 greet(null); // 输出“你好, null” — 但应该输出“未指定名称”! ``` 为什么 `name == undefined` 没有捕获到 `null`?我读到有 `==` 和 `===` 运算符,但我不理解它们的区别。我还听说过 `typeof`,但它似乎用于字符串。请告诉我如何同时检查 `undefined` 和 `null`?以及这两者之间是否有区别?