Показать сообщение отдельно
  #1 (permalink)  
Старый 16.03.2011, 10:30
Новичок на форуме
Отправить личное сообщение для NElias Посмотреть профиль Найти все сообщения от NElias
 
Регистрация: 16.03.2011
Сообщений: 3

ООП: проблема переопределения this
Пример:
var Window = function() {
    this.title = 'None';

    this.update = function(data) {
        this.title = data.title;
    }

    this.move = function() {
        $.getJSON('/move/', this.update);
    }

    this.fix_move = function() {
        var mthis = this;
        $.getJSON('/move/', function(data) {
            mthis.update(data);
        });
    }
}


Когда вызывается move, то в методе update, подменяется this и уже недоступны поля объекта Window. В fix_move это исправлено.

Может быть я что-то делаю не так, как будет правильно использовать ООП в таких случаях?
Ответить с цитированием