javascript有没有方式检测变量是否被定义呢?这里讨论的是否被定义;是指var message;这样没有赋值也算是定义了;已知方式var message;console.log(message==undefined); //有定义的话返回true;没有的话直接报错;另一方法var message;console.log(typeof message=="underfined");这种方式,没有赋值和没有被定义都返回true;不会出现报错;但是不能区分不赋值和没有被定义.有没有一种方式可以区分没有赋值和没有被定义而不报错的呢?
1 回答
慕桂英546537
TA贡献1848条经验 获得超10个赞
如果是在全局环境,最合适的是用in操作符:
!('message' in window) // true则没定义'message' in window && message === undefined // true则没赋值如果不限,那么:
message === undefined // 抛异常则没定义,true则没赋值
添加回答
举报
0/150
提交
取消
