多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
在某函数内定义的所有变量在该函数外是不可见的。但如果该变量是在某代码块中被定义的,那么他在代码块外是可见的。 ``` >>> var a = 1; undefined >>> function f(){ ... var b = 1; ... return a; ... } undefined >>> f(); 1 >>> b; Exception: ReferenceError: Can't find variable: b ``` 在上面的代码中,变量a是全局的,变量b的作用域在函数f()内了。 在f()内,a和b都是可见的; 在f()外,a是可见的,b则不可见。 例如: ``` var global = 1; function outer(){ var outer_local = 2; function inner(){ var inner_local = 3; return global + outer_local + inner_local; } return inner(); } outer(); ``` 返回结果: ``` 6 ``` outer()中定义了一个函数inner(),那么在inner()中可以访问的变量即来自它自身的作用域,也可以来自其“父级”作用域。