如何判断变量是否为 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`?以及这两者之间是否有区别?