【问题标题】:javascript private and public functions and membersjavascript私有和公共函数和成员
【发布时间】:2012-10-25 23:40:25
【问题描述】:

我正在阅读关于 javascript 私有成员和公共成员的小教程 (http://www.crockford.com/javascript/private.html)

这让我很困惑,因为这里说:

公开

对象的成员都是公共成员。任何功能都可以访问、修改或删除这些成员,或添加新成员。将成员放入新对象有两种主要方式:

在构造函数中

这种技术通常用于初始化公共实例变量。构造函数的 this 变量用于向对象添加成员。

function Container(param) {
    this.member = param;
}

然后它说:

私有成员由构造函数创建。普通的 var 和 构造函数的参数 成为私有成员。

function Container(param) {
    this.member = param;
    var secret = 3;
    var that = this;
}

“此构造函数生成三个私有实例变量:param、secret 和 that。”

我不明白........如果构造函数参数最终是私有的,那么为什么第一个示例是公开的?

【问题讨论】:

    标签: javascript private-members


    【解决方案1】:

    在第一个示例中,member 创建为公共成员,其值初始化为(否则为私有)param 值。

    【讨论】:

    • 啊好吧。谢谢...我没有注意到它说的是“param”而不是“this.member”
    猜你喜欢
    • 2010-11-15
    • 2010-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-31
    • 1970-01-01
    相关资源
    最近更新 更多