Это вопрос, который я только что опубликовал. Мне интересно, как вы все обрабатываете переменные-члены в javascript-кланах при использовании MyClass.prototype для определения методов.
Если вы определяете все методы в функции конструктора:
function MyClass(){
this.myMethod = function(){}
}
Вы можете очень хорошо объявить переменные-члены и получить доступ к ним из ваших методов:
function MyClass(){
var myVar = "hello";
this.myMethod = function(){
alert(myVar);
}
}
При использовании метода Object.prototype вы теряете эту тонкость и должны делать это следующим образом:
function MyClass(){}
MyClass.prototype.myVar = "hello";
MyClass.prototype.myMethod = function(){alert(this.hello)};
Я не сумасшедший о необходимости писать "this" каждый раз, когда я обращаюсь к переменной-члену. Я хочу использовать подход Object.prototype для соображений памяти и гибкости, но он кажется намного более неудобным по синтаксису. Это как вы, как правило, работаете?
спасибо,
-Morgan