js如何判断变量声明和初始化状态

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。

你可能感兴趣的:(js如何判断变量声明和初始化状态)