Возможный дубликат:
Использование "прототипа" против "этого" в Javascript?
Мое понимание различных функций JavaScript выглядит следующим образом:
function MyObj() {
this.propOne = true;
this.publicInstanceFunc = function() {
if (propOne)
return 'public instance function';
}
function privateFunc() {
return 'private function only visible inside this constructor';
}
}
MyObj.prototype.protoFunc = function() {
if (this.propOne)
return 'prototype function shared amongst all instances of MyObj';
}
- Правильны ли они?
- В каких случаях следует ставить функции на прототипе (например,
protoFunc
) и в конструкторе (например,publicInstanceFunc
)? - Использует
this
правильный способ доступа к свойствам внутри функций прототипа?