У меня есть объект javascript с несколькими методами. Однако я замечаю некоторую несогласованность в том, как определяются методы.Несоответствие определения метода JavaScript
Здесь объект:
function MenuObject(containerId, skin) {
this.id = containerId;
this.something = something2;
.
.
.
this.anotherThing = anotherThing2;
this.setSkin = function(skin) { //We have a function here
//body...
{
}
MenuObject.prototype.getTopLevelPolygon = function() //Another function.
{
var p = this.something3;
//Method body goes here...
}
Некоторые из функций, которые определены как this.functionName = функции(), другие, как MenuObject.prototype.functionName = функции()
Мне просто интересно, почему не все функции, которые принадлежат элементу MenuObject, определенные как MenuObject.prototype.functionName = function()?
Так что * реальный вопрос: «Почему методы добавлены в .prototype?» или, может быть, «Какова собственность« прототипа »? или .. Подсказка: найдите «прототип javascript». – 2013-03-23 00:36:56