区分未初始化还是未声明的方法(不产生错误)

问与答 DCrystal 发表于 1 年前

今天看JS的书,突然来的疑问,以下有三种情况:
var DC;
/
alert(DC); //undefined
alert(DL); //出错
/

//二
DC==null;//true
DL==null;//出错

//三
alert(typeof(DC));//undefined
alert(typeof(DL));//undefined
总结:未声明和未初始化执行typeof都会返回undefined,比之未声明的变量其实什么都没有(也不是null)
方法要实现的效果:
当输入DC返回“未初始化变量”,当输入DL返回“未声明变量”
所想到的方法:
var DC;
function identifyWay(a)
{
try{
if(a==null)
{
alert("未声明变量");
}
}
catch(err){
alert("未初始化变量");
}
}
有另外的写法吗

暂无回复,说出你的观点吧
登录后即可参与回复