js判断一个变量或对象是否存在

JavaScript017

js判断一个变量或对象是否存在,第1张

1、首先创建两个文件,一个jstest.html,一个jstest.js文件。

2、打开html在里面引入jstest.js。

3、打开jstest.js文件,创建一个方法aa。

4、然后接着使用if(typeof  aa=="function")判断如果aa方法存在就提示"aa方法存在",否则弹出"aa方法不存在",明显aa是存在的。

5、接着使用if(typeof  cc=="function")判断如果cc方法存在就提示"cc方法存在",否则弹出"cc方法不存在",因为我们没有定义cc这个方法,所以cc不存在。

6、打开jstest.html,第一会提示,“aa方法存在”。

首先检查页面是否有错误,是否出现xxx未定义的情况

然后可以alert下,例如:

varstudent=newfunction(){

this.id="01"

this.name="aa"

}

alert(student)

alert(student.id)

如果是[objectObject],说明存在

如果是undefined或null则说明不存在。

也可以使用js断点调试工具,跟踪调试,比如firebug

实例如下:if (typeof(obj) == undefined) {//操作语句}如果typeof(obj) == undefined 为true则该对象不存在,当前脚本还没有定义该对象其他的写法要注意:// 这种方法不起作用if (x == undefined)//操作语句//对象属性不存在,声明了变量但从未赋值。实例:<html<body<script type=text/javascriptif (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判断元素是否存在:<script language=javascriptfunction changelocation(){if(document.getElementById(payment_info))alert('true')elsealert('false')}</script