我正在阅读关于javascript私有成员和公共成员(http://www.crockford.com/javascript/private.html)
的小教程 但是这让我感到困惑,因为它说:公共
对象的成员都是公共成员。任何功能都可以访问,修改或删除这些成员,或添加新成员。将成员放入新对象有两种主要方式:
在构造函数
中此技术通常用于初始化公共实例变量。构造函数的this变量用于向对象添加成员。
function Container(param) {
this.member = param;
}
然后它说:
私有成员由构造函数构成。普通变量和构造函数的参数成为私有成员。
function Container(param) {
this.member = param;
var secret = 3;
var that = this;
}
“这个构造函数生成三个私有实例变量:param,secret和。”
我不明白........如果构造函数参数最终变为私有,那么为什么第一个示例被公开为什么?
答案 0 :(得分:0)
在第一个示例中,member
被创建为公共成员,其值初始化为({私有)值param
。