javascript的变量有一种特殊值,undefined。判断一个变量是不是等于undefined的时候,有两种方法:
if (foo_bar === undefined) { //do something }
if (typeof foo_bar === "undefined") { // do something }
这两种用法是有区别的,其中第二种的形式比较通用,如果怕麻烦,就全部使用第二种就好,没错。
不过据Mr. stauren发现,一些追求极致的代码中,还是会使用第一种方法,比如google的很多代码,因为显然第
一种方式比较节约长度,而这对于web应用来说是至关重要的。使用第一种方式,很容易导致js代码出错,因为js
碰到未赋值变量被使用的时候,会抛出一个"xxx is not defined"的错误。只有两种情况例外:
1. 这个变量是函数的参数,可能传入的时候这个参数被忽略,但是,其实它在函数初始时已经被声明并赋值
undefined,所以不会出错。
2. 这个变量是某对象的成员。很好笑的是一个结论:
alert(a); //抛出错误
alert(window.a); // 结果为"undefined"
补充一点:
如果是该变量是某对象的成员的成员,如果它的成员就为undefined的话,还是会抛出错误。
所以,
alert(window.a); // ok
alert(window.a.a); //error
分享到:
相关推荐
JS 中如何判断 undefined null.rar
js判断undefined类型,undefined,null,NaN的区别
理解javascript中undefined和null的区别
JavaScript中undefined和null的区别 JavaScript两个表示”无”的值:undefined和null。我在平时只是null用的多一点,undefined只是在报错中经常遇到。下面针对这两个数据类型的异同做一下详细的比较。 1.undefined和...
null和undefined的区别 null :表示无值;undefined : 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。==运算符将两者看作相等。如果要区分两者,要使用===或typeof运算符。使用if (!...
百度,阿里 以下哪个单词不属于javascript保留字:(B) A. with B....C....D....3、请选择结果为真的表达式:(C) A. null instanceof Object ... null === undefined C. null == undefined D. NaN == NaN
Javascript类型系统之undefined和null浅析_.docx
javascrit中undefined和null的区别详解.docx
js判断undefined类型 今天使用showModalDialog打开页面,返回值时。当打开的页面点击关闭按钮或直接点浏览器上的关闭则返回值是undefined所以自作聪明判断 var reValue=window.showModalDialog(“”,””,””); ...
js中 关于undefined和null的区别介绍.docx
在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。 var a = undefined; var a = null; 上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎等价。 undefined和null在if语句中,...
javascript类型系统--undefined和null全面了解_.docx
Undefined 表示变量已声明,但未被初始化。...使用typeof操作符返回的值是’object’,需要注意的是,undefined值是派生自null值的,因此ECMA-262规定对它们的相等性测试要返回true。 console.log(null == undefi
一、单选题 1、以下哪条语句会产生运行错误:(A) A.var obj = ( ); B.var obj = [ ];... null === undefined C. null == undefined D. NaN == NaN 二、不定项选择题 4、请选择对javascript理解有误的:(ABCD) A.
null和undefined属于js中两种不同的基本数据类型,都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。并且在if语句的判断条件中,它们都会自动转为false,相等...
貌似以前也看过null==undefined,null!==undefined,但也一直没有在意。 近日看过去别人的一程序源码,到处都有一些如if(x!=undefined&&x!=null&&x!=””)之类的判断,突然觉得写的很啰嗦,俺一般都直接if(x){}因为...
一 Undefined 类型 只有一种值 undefined 以下三种情况typeof 返回类型为undefined 1. 当变量未初始化时 2. 变量未定义时 3. 函数无明确返回值时(函数没有返回值时返回的都是undefined) undefined 并不等同于...
总所周知:null == undefined 但是:null !== undefined 那么这两者到底有啥区别呢? 请听俺娓娓道来… null 这是一个对象,但是为空。因为是对象,所以 typeof null 返回 ‘object’ 。 null 是 JavaScript 保留...
javascript 中null和undefined区分和比较 Undefined类型 Undefined 类型只有一个值,即特殊 undefined 。在使用 var 声明变量但未对其加以初始化时,这个变量的值就是 undefined , 例如: var message; alert(...
1、Undefined Undefined 类型只有一个值,即特殊的undefined。根据工作中总结,只要有这几种情况下会出现undefined。 1.定义变量,但是没有初始化时,如var a; 2.调用某个函数时,实参个数小于形参个数时,未实参化...