Не удается получить массив JavaScript для работы в стиле ООП - PullRequest
1 голос
/ 14 сентября 2010

Привет! Сейчас я пытаюсь заставить работать следующий фрагмент кода:

function Entry() {
    var pauses = new Array();
}

Entry.prototype = {
   AddElement: function(aParameter) {
      this.pauses.push(aParameter);
   }
}

К сожалению, этот код завершается с ошибкой в ​​Safari, если я пытаюсь вызвать AddElement («Test»);

TypeError: Результат выражения 'this.pauses' [undefined] не является объектом. Кто-нибудь знает почему?

Ответы [ 2 ]

1 голос
/ 14 сентября 2010

изменение

var pauses = new Array();

до

this.pauses = new Array();

или лучше

this.pauses = [];
1 голос
/ 14 сентября 2010

В вашем коде pauses является локальной переменной внутри функции Entry(), а не членом созданного ею объекта.

Вы хотите заменить var pauses = ... на this.pauses = ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...