JS中如何判断一个变量是否已经声明?

2024-11-16 11:36:06
推荐回答(2个)
回答(1):

//var va;
//var va = null;
//var va = 'xxxx';
try{
// 已经声明
// 判断是否已经定义
if (va === undefined){
// 不能使用 ==,因为当 "var va = null;"时 被判定为未定义是错误的。
//if (typeof va === 'undefined'){ // 这种方式也是不可取的。
// 未定义
window.console && console.log("变量未定义.");
}else {
// 已经定义了,可能为null
window.console && console.log("变量已定义.");
}
} catch(e){
// va 未声明
window.console && console.log("变量未声明,");
}

回答(2):

try{
if(a == undefined || a){
console.log('existing');
}
}catch(e) {
console.log('no existing');
console.log(e);
}
PS:只在chrome下测试了,方法比较二逼