一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

js判断undefined类程序代码

时间:2013-03-15 编辑:简简单单 来源:一聚教程网

没有给变量赋值,如:var tmp;如果这是用typeof去判断这个变量的类型的话肯定是undefined类型。

如果用var 声明了某变量之后我们可以直接用

 代码如下 复制代码

if( tmp == undefined )或者if( tmp != undefined )

去判断,这个是没有问题的,不过这边也容易出现一个陷阱,如果一个变量没有用var声明过,而直接用

 代码如下 复制代码

if( tmp == undefined )或者if( tmp != undefined )

去判断的话是错误的,这个时候浏览器会报错,提示 XXX 未定义(IE下)或者XXX is not defined(火狐下)。我想在js中还是存在变量先声明再使用这个限制的,但是遇到上面的问题时还是可以直接使用typeof(XXX)来判断的吗,这个在所有浏览器下都是支持的,但是需要注意的是用typeof得出的结果是一个字符串,所以在比较的时候要比较字符串,
如:

 代码如下 复制代码

typeof(undefined) == 'undefined'

JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断。

以下是不正确的用法:

 代码如下 复制代码

if (reValue== undefined){
    alert("undefined");
}


reValue为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 undefined 和 null 时可使用本法。
 

 代码如下 复制代码

var exp = undefined;
if (typeof(exp) == undefined)
{
    alert("undefined");
}


typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"

 
以下是正确的用法:

 代码如下 复制代码

var exp = undefined;
if (typeof(exp) == "undefined")
{
    alert("undefined");
}

热门栏目