我現在設立類似下面非靜態私有變量
Object1 = function() {
var privateMember = "private value"
return {
publicMember: "public value"
setPrivateMember: function(value) {
privateMember = value;
}
}
}();
我的JavaScript對象,如果我使用原型繼承來創建新的對象
Object2.prototype = Object1
然後設置專用成員
Object2.setPrivateMember("new value");
然後,對象1中的私有成員的值也發生變化,所以它的行爲更像一個sta抽動變量。有沒有辦法讓私有變量不是靜態的?
PS - 我是一名自學成才的程序員,所以我對術語的使用可能有點粗略。讓我知道是否需要澄清
應該使用'Object2.prototype = Object1()'或這只是粘貼代碼中的一個錯字嗎? – MooGoo 2010-09-14 14:35:37
[繼承原型中的私有變量]的可能重複(http://stackoverflow.com/questions/3617139/private-variables-in-inherited-prototypes) – 2010-09-14 14:47:47