gpt4 book ai didi

javascript - 如何检查变量是否为 'not defined'(不仅仅是 `undefined`)

转载 作者:行者123 更新时间:2023-11-29 16:02:16 28 4
gpt4 key购买 nike

我想检查一个变量是否未定义,不包括分配给undefined的变量,没有try/catch

我知道 typeof 变量,但这不符合我的要求。

例如:

let a;
console.log(typeof a === typeof b); // outputs true

console.log(a); // outputs 'undefined'
console.log(b); // throws error 'b is not defined'

我希望能够区分 undefined variable 和值为 undefined 的变量,而无需使用 try/catch.

我的用例(来自评论)是:

I would like to see the difference in a function call between a parameter ommitted and set at undefined. And also in general if it was possible

最佳答案

一种可能是使用 window.hasOwnProperty("var"),像这样:

虽然不知道这是否适用于所有情况......

您也可以尝试使用“this”关键字而不是“window”来将“hasOwnProperty”函数集中在当前作用域上。

var a;

console.log("Is a declared? "+window.hasOwnProperty("a"));
console.log("type of a: "+typeof(a));
console.log("Is b declared? "+window.hasOwnProperty("b"));
console.log("type of b: "+typeof(b));

关于javascript - 如何检查变量是否为 'not defined'(不仅仅是 `undefined`),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51139367/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com