在调用构造函数时使用Javascript吗?

时间:2016-02-23 09:50:31

标签: javascript oop this

我在调用构造函数时尝试使用this。我将对象文字作为参数传递给构造函数。

var testView = new View({
  element: '.testEl',
  model: player,
  initialize: function() {
    var self = this;
    setTimeout(function() {
      self.model.set({
        name: 'Billy'
      });
    }, 5000);
  }
}); // view instance

但是当我在对象中记录this时,它只给了我View {}但没有给出我的方法。

我想访问model,显然我在这里缺乏一些知识而且我在问为什么this在上面的例子中没有按预期工作?

视图看起来像

// View
var View = function(object) {
  object.initialize.call(this);
  this.element = document.querySelector(object.element);
  this.element.innerHTML = object.model.get('name');

  setTimeout(function() {
    this.element.innerHTML = object.model.get('name');
  }, 6000);
};

0 个答案:

没有答案