A-A+

javascript如何判断变量是否存在

2016年10月16日 前端设计 暂无评论 阅读 7 views 次

本文章来给大家介绍关于javascript如何判断变量是否存在一些方法,我们在js中未定义变量是undefined但是不能直接使用aa==undefined 而应该使用 typeof(variable)===\'undefined\')哦。

开始还以为只要if(variable===undefined)就能实现,但是在chrome中运行时却报错了,后来在网上找了找发现了一个方式if(typeof(variable)==='undefined'),如果在window作用域下,这个方式是不会报错的,当然如果你的作用域是在自己的对象或者函数中,则if(variable===undefined)就可以了,代码如下:

  1. if (typeof(x) == "undefined") {  
  2.     alert("未定义");  
  3. }  

除了用if(MyObject == null)判断外,首先必须定义变量MyObject,代码如下:

  1. var MyObject;  
  2. if(MyObject == null) {  
  3. MyObject = {};  
  4. }  

2、因为是全局对象,可以用window.变量名方式判断,代码如下:

  1. if(window.MyObject == null) {  
  2. window.MyObject = {};  
  3. }//xiariboke.net  
  4. //或者  
  5. if(!("MyObject" in window)) {  
  6. window.MyObject = {};  
  7. }  

不建议使用if(!MyObject)或者if(!window.MyObject)方式判断对象是否存在,因为当MyObject=false或者MyObject=""时,该条件判断也是成立的,附上判断对象未定义的方法:

  1. var a;  
  2. alert(a == undefined);//第一种  
  3. alert(typeof a == "undefined");//第二种  
  4. alert(a === undefined);//与第一种类似  
  5. //如果是判断一个对象的某个属性是否存在,可以用以下方法:  
  6. var obj = {};  
  7. alert(obj.hasOwnProperty('a'));  
  8. alert('a' in obj);  
标签:

给我留言