Javascript判断变量是否定义的方法,欢迎补充

使用一个未定义的变量,javascript会报 Uncaught ReferenceError 错误,正常情况下也不需要考虑这种情况,试想这样一个情景:AB两个功能类似的页面引用了同一个js文件,有一天有一个有个紧急的需求修改,需要在A页面引入新的js变量,然后你再那个js文件做了对应的修改,然而因为时间太久的原因,你忘记了B页面也同样引用了这个js,那么问题来了。紧急上线后,A页面是没有任何问题,B页面的位于那一小段js之后的所用功能都挂了,在不同的公司,这个影响可大可小哭(我当时遇到时影响很大)........

1、最传统的方式

      typeof 操作符 作用于一个未定义的变量返回‘undefined’字符串;类似 if(typeof varibleA != '‘undefined’') { do something.... }

2、写插件时经常用到的

      var varibleA  = varibleA  || "";     

      但是不可以写成  var varibleB = varibleA  || "";   其根本原因我不是很清楚,望懂的朋友解释下。

3、这个比较有意思,可以解决2遇到的问题

      var varibleB  = window.varibleA  || "";  不需要解释吧

4、使用javascript异常处理

      try{

      do something with varibleA .........

      }catch(e){

      do something with the Exception............

      }

      后面跟正常逻辑处理程序即可。


鄙人暂时知道这么几种,欢迎指正与补充。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值