Я настраиваю свои объекты javascript следующим образом
Object1 = function() {
var privateMember = "private value"
return {
publicMember: "public value"
setPrivateMember: function(value) {
privateMember = value;
}
}
}();
Теперь, если я использую прототипное наследование для создания новых объектов
Object2.prototype = Object1
А затем установите частный член
Object2.setPrivateMember("new value");
Затем значение закрытого члена в Объекте 1 также меняется, поэтому он ведет себя больше как статическая переменная. Есть ли способ заставить частные переменные не быть статическими?
PS - Я программист-самоучка, поэтому мое использование терминологии может быть немного схематичным. Дайте мне знать, если это нужно уточнить
Object2.prototype = Object1()
, или это просто опечатка во вставленном коде? - person MooGoo   schedule 14.09.2010