js判断对象是否存在

实例如下:

if (typeof(obj) == "undefined") {

// 操作语句}

如果typeof(obj) == "undefined" 为true则该对象不存在,当前脚本还没有定义该对象

其他的写法要注意:

// 这种方法不起作用
if (x == undefined)
// 操作语句
// 这个方法同样不起作用- 必须检查
// 字符串 "undefined"
if (typeof(x) == undefined)
// 操作语句

这样我们就要知道什么样的情况下会返回的是undefined呢?有如下两种:

  • 对象属性不存在,
  • 声明了变量但从未赋值。

实例:

<html>
<body>
<script type="text/javascript">
if (typeof(ActiveXObject)=="undefined")
{alert("不存在ActiveXObject")}
else
{alert("存在ActiveXObject!!")}

</script>

</body>
</html> //返回的是:存在ActiveXObject,因为该对象是js里已经制定的对象已经由js定义声明过的,只要是js制定存在的都是非 undefined

但是如果改为:typeof(ActiveXObject1)=="undefined” 则返回的是不存在了ActiveXObject1

另外typeof(t1)=="undefined” 如果这个对象不存在于该脚本范围内,或者如果t1 是声明的变量但是没有初始化也就是没有赋值两者都会返回undefined

原文地址:https://www.cnblogs.com/mahaisong/p/1971588.html