如果我不知道变量是否存在,如何比较变量和未定义变量?
2022-08-30 05:32:14
在JavaScript中,你可以声明一个变量,如果是,你可以检查;我知道这一点,但是如果一个你还不知道的值在内存中,你怎么能比较它呢?undefined
variable == undefined
例如,我有一个类,当用户单击按钮时创建该类。在此之前,该类是未定义的 - 它不存在于任何地方;我该如何比较呢?
有没有办法不使用 –?try
catch
在JavaScript中,你可以声明一个变量,如果是,你可以检查;我知道这一点,但是如果一个你还不知道的值在内存中,你怎么能比较它呢?undefined
variable == undefined
例如,我有一个类,当用户单击按钮时创建该类。在此之前,该类是未定义的 - 它不存在于任何地方;我该如何比较呢?
有没有办法不使用 –?try
catch
最好的方法是检查类型,因为 // 在 JS 中是一件棘手的事情。所以:undefined
null
false
if(typeof obj !== "undefined") {
// obj is a valid variable, do something here.
}
请注意,始终返回一个字符串,如果变量根本不存在,则不会生成错误。typeof
if (obj === undefined)
{
// Create obj
}
如果你正在做广泛的javascript编程,你应该养成使用习惯,当你想做一个特定于类型的检查。===
!==
另外,如果你要做相当多的javascript,我建议通过JSLint运行代码,http://www.jslint.com 一开始可能看起来有点严厉,但JSLint警告你的大多数事情最终都会回来咬你。