JS块级作用域和私有变量实例分析

  

本文实例讲述了JS块级作用域和私有变量。分享给大家供大家参考,具体如下:

  

        (函数(){//这里是块级作用域   }) ()      之前      

例如:         (函数(){   (var i=0; i<5,我+ +){   警报(i);//0, 1, 2, 3, 4   }   }) ();   警报(i);//错误      之前      

上例中,定义了一个块级作用域,变量我在块级作用域中可见的,但是在块级作用域外部则无法访问。

  

这种技术经常在全局作用域中被用在函数外部,从而限制向全局作用域中添加过多的变量和函数。

  

  

任何在函数中定义的变量,都可以认为是私有变量。因为不能在函数的外部访问这些变量。私有变量包括函数的参数,局部变量和在函数内部定义的其他函数。

  

我们把有权访问私有变量和私有函数的公有方法称为特权方法:

        函数MyObject () {//私有变量和私有函数   var privateVariable=10;   函数privateFunction () {   返回错误;   }//特权方法,特权方法作为闭包有权访问在构造函数中定义的所有变量和函数   这一点。publicMethod=function () {   privateVariable + +;   返回privateFunction ();   };   }   var obj=new MyObject ();   obj.publicMethod ();//之前      

原型模式定义共有方法:

        (函数(){//私有变量和私有函数   var privateVariable=10;   函数privateFunction () {   返回错误;   }//构造函数   MyObject=function () {   };//公有/特权方法   MyObject.prototype。publicMethod=function () {   privateVariable + +;   返回privateFunction ();   };   }) ();      之前      

模块模式:

        var单=function () {//私有变量和私有函数   var privateVariable=10;   函数privateFunction () {   返回错误;   }//特/公权有方法和属性   返回{   publicProperty:没错,   publicMethod:函数(){   privateVariable + +;   返回privateFunction ();   }   };   }();      之前      

更多关于JavaScript相关内容可查看本站专题:《JavaScript常用函数技巧汇总》、《JavaScript面向对象入门教程》、《JavaScript错误与调试技巧总结》,《JavaScript数据结构与算法技巧总结》及《JavaScript数学运算用法总结》

  

希望本文所述对大家JavaScript程序设计有所帮助。

JS块级作用域和私有变量实例分析