Js中判断变量存不存在的问题

JavaScript029

Js中判断变量存不存在的问题,第1张

用 typeof 就行

比如,你要判断变量abc是不是存在,那么就用

if(typeof abc === 'undefined'){

console.log("不存在");//打印 不存在

}

当然如果你声明了变量没有赋值,也能进if,比如:

var bcd

if(typeof bcd=== 'undefined'){

console.log("bcd不存在")//打印 bcd不存在

}

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方法存在”。

js中的null代表不存在,在某些情况下和undefined定义一样,比如null==undefined返回的是true;而undefined这表示未定义;undefined是个类型,null是个object;然而''则表示具体的类型的值了;如果一个变量申明了未赋值,则类型未定义,这里判断变量==null会返回true;

根本区别在于变量是否已经赋值,即是否已经初始化

这里要清楚:null是个object类型,且值只有null

undefined是个undefined类型,值只有undefined

''是个String类型的值

那么这里null==undefined返回true

null===undefined返回false

null==''返回false

undefined==''返回false