var a
try{
if(a === undefined){
console.log('变量已声明,但未初始化')
}else{
console.log('变量已声明,且已初始化')
}
}
catch(err){
console.log('变量未声明')
}
注释
- 当js访问一个未声明的变量时,会发生错误,catch可以捕捉到这一错误信息
- 根据a === undefind 的布尔值,可以判断a变量是否被初始化,这里必须为绝对等于 ===,因为当 a = null 时,a == undefined 为true。