JavaScript类定义:私有成员、特权方法与公共方法详解

作者:异步漫步

时间:2026-10-23

浏览:335

本文通过一个JavaScript类定义示例,详细解析了私有变量、私有方法、特权方法以及公共成员的实现方式。重点说明特权方法如何访问所有成员,而公共原型方法无法直接访问私有成员的机制,并展示了实例化后的调用结果。

文章目录

JavaScript类定义:私有成员、特权方法与公共方法详解

代码示例如下:

 
<script>
// 定义一个 JavaScript 类
function JsClass(privateParam/* */,publicParam){// 构造函数
var priMember = privateParam; // 私有变量
this.pubMember = publicParam; // 公共变量
// 定义私有方法
function priMethod(){
return "priMethod()";
} 
// 定义特权方法
// 特权方法可以访问所有成员
this.privilegedMethod = function(){
var str = "这是特权方法,我调用了\n";
str += " 私有变量:" + priMember +"\n";
str += " 私有方法:" + priMethod() +"\n";
str += " 公共变量:" + this.pubMember +"\n";
str += " 公共方法:" + this.pubMethod();
return str;
} 
} 
// 添加公共方法
// 不能调用私有变量和方法
JsClass.prototype.pubMethod = function(){
return "pubMethod()";
} 
// 使用 JsClass的实例
JsObject = new JsClass("priMember","pubMember");
//alert(JsObject.pubMember);//弹出pubMember信息
//alert(JsObject.priMember);//弹出undefined信息
//alert(JsObject.pubMethod());//弹出pubMethod信息
//alert(JsObject.priMethod());//弹出"对象不支持此属性或方法"的错误
alert(JsObject.privilegedMethod());
</script>

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章