js 模仿块级作用域(私有作用域)、私有变量

    function outputNumbers(count){
     var privateVariable = 10;//私有/局部变量,函数外部不能被访问
     publicVariable = 20;//全局变量,能够在函数外部被访问 (
function(){
       //
这里是私有作用域
       
for(var j=0; j < count; j++){ } console.log(j);//5
       //end })(); console.log(j);//报错,j is not defined } outputNumbers(
5);

  JavaScript将function关键字当作一个函数声明的开始,而函数声明后面不能加括号,然而,函数表达式的后面可以跟括号,将函数声明包含在一对圆括号中可以转换成函数表达式。

  无论在什么地方,只要临时需要一些变量,就可以使用私有作用域。这种技术经常 在全局作用域中 被用在函数外部,从而限制向全局作用域中添加过多的变量和函数。

  私有作用域中初始化未声明的变量,是一个全局变量,能够在私有作用域之外被访问。

 

posted @ 2015-12-11 22:54  tianxintian22  阅读(332)  评论(0编辑  收藏  举报