var a=" "; var b=""; typeof a //string typeof b //string alert(Boolean(a)); //true alert(Boolean(b)); //false
切记不要认为a="";与a=" ";(包含空格的)是等价的!!!!
undefined==null----true
undefined===null----false
undefined==""------false
null==""----false
JavaScript 从来不会告诉你是否多次声明了同一个变量;遇到这种情况,它只会对后续的声明视而不见(不过它会执行后续声明中的变量初始化)。
如下例子:
var i=10; var i; alert(i); //10
但是如果给后续声明的变量初始化了,它还是会执行的。
var i=10; var i=5; alert(i); //5
匿名函数可以用来模仿块级作用域,并避免这个问题。
(function(){ //这里是块级作用域 })();
本文探讨了JavaScript中变量声明、初始化的过程及作用域规则,包括变量类型的判断、比较操作符的行为、重复声明变量的影响等内容,并通过具体示例说明如何使用匿名函数创建块级作用域。

201

被折叠的 条评论
为什么被折叠?



