和c,c++以及java不同,javascript没有块级作用域。函数中声明的所有变量,不论是在哪里声明的,在整个函数中他们都是定义的。在下面函数中,变量,i,j,k的作用域相同,他们在整个函数都是定义的。如果这段代码使用c,c++或java编写,情况就不是这样的了。




















下面代码说明了这一点。










同时这个例子也说明了为什么将所有的变量声明放在程序开头是个好的习惯
转载于:https://www.cnblogs.com/changmao99/archive/2007/06/04/770861.html