来自非 javascript 背景,我正试图将我的头绕在“未定义”周围。我写了一个“isUndefined”函数如下:
function isUndefined(value) {
return (typeof value === 'undefined');
}
如果我在源代码中输入 this(其中不存在变量“boo”),我会得到预期的结果“未定义的变量”。
if (typeof boo === 'undefined') {
console.log('undefined variable');
}
如果我输入以下内容:
console.log (isUndefined(undefined));
我得到了预期的结果“真”
如果我输入: console.log(isUndefined(boo));
我得到:
参考错误:boo 未定义。
我希望得到“真” - 所以我的问题是为什么第一次“直接”检查未定义会返回预期结果,而函数()测试它却没有?