js undefined 和 undeclared
在stackoverflow上看到如下一个问题
如果window上的a属性没有定义,如下代码不会引发异常
if(window.a){
//some code
}如果a变量没有定义,如下代码会引发异常
if(a){
// some code
}
后面高手回答:(Török Gábor)
if(window.a) 是访问了window对象上一个未定义的属性a。if(a) 则是访问了一个未定义的变量。
使用变量时需要先使用var关键字定义这个变量。如果你不定义的话,编译器则会引发一个异常。
对象的属性不需要显示定义就可以使用而不会引发任何异常,但是会得到未定义的值 undefined .
标签:
undefined,
undeclared
我也来参与讨论
你还可以输入600/600个字符
发表评论
方向之于生命
回复 2012-2-12 21:59:05 by NinoFocus
回复 2012-2-15 22:14:59 by klvoek