【js判断undefined和空】js判断undefined类程序代码

更新时间:2017-11-27    来源:js教程    手机版     字体:

【www.bbyears.com--js教程】

没有给变量赋值,如: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");
}

本文来源:http://www.bbyears.com/wangyezhizuo/37343.html