Javascript中的作用域:
- 函数作用域:在函数中声明的变量只在函数体内部可见,包括嵌套函数内,在函数外部不可访问
- 全局作用域:不在函数体内定义的变量是全局变量,在整个Javascript程序中都是可见的
- Javascript没有块作用域,比如for while循环体(花括号)内定义的变量,在循环体外也可以访问,是全局变量
由于没有块作用域,为了防止全局命名空间被污染,经常通过定义一个函数用作临时命名空间,通常使用匿名函数的方式。
(function(){// 函数重写为匿名的函数表达式模块代码
//mymodule() //模块代码
}()) //定义完直接调用