JavaScript的public、private和privileged模式
JavaScript的public、private和privileged模式
原文:Private Members in JavaScript??
本文从这里转载,所有版权归原作者所有
?
公共/私有变量和方法
通过一个简单的的例子,来展示如何使用JavaScript在类里面创建私有变量和方法
?
Summary
-
私有变量?在对象内部使用'var'关键字来声明,而且它只能被私有函数和特权方法访问。
-
私有函数?在对象的构造函数里声明(或者是通过var functionName=function(){...}来定义),它能被特权函数调用(包括对象的构造函数)和私有函数调用。
-
特权方法?通过this.methodName=function(){...}来声明而且可能被对象外部的代码调用。它可以使用:this.特权函数() 方式来调用特权函数,使用 :私有函数()方式来调用私有函数。
-
公共属性?通过this.variableName来定义而且在对象外部是可以读写的。不能被私有函数所调用。
-
公共方法?通过ClassName.prototype.methodName=function(){...}来定义而且可以从对象外部来调用。
-
原型属性?通过ClassName.prototype.propertyName=someValue来定义。
-
静态属性?通过ClassName.propertyName=someValue来定义。
另外注意下这种写法: var 函数名=function 函数名(){...} 这个函数被调用时具有特权函数和私有函数的特性。
?
例:
?
?