标签:javascript 变量冲突 变量作用域 变量 作用域
在JavaScript中,以下的代码是一段合法的程序:
var i=0; var i=1; alert(i);
看上去半点问题没有,但是,在Java,C等一些编程语言中,以下类似的代码就不是一段合法的程序:
int i=0; int i=0;
在Javascript中,这样纵使变量i被重复定义也一样没问题,纵使变量冲突也是可以通过编译的,倒底有什么问题呢?
问题是非常大的。导致比如下面的一段程序中的错误非常难以发现:
for(var i=0;i<1;i++){ for(var i=0;i<1;i++){ } }
标签:javascript 变量冲突 变量作用域 变量 作用域
原文地址:http://blog.csdn.net/yongh701/article/details/43937705