創建self = this變量會很舒服。在所有方法中,我們總是可以使用self,並且不用擔心方法上下文 - 有時候這個的方法不是我們所期望的。 但是在原型方法中我們不能使用這個提示;在原型方法中使用此方法的最佳方法
看(jQuery的需要onle顯示的問題)
var myClass = function() {
this.propery = 'someData';
var self = this;
this.method = function() {
console.log(self.propery);
}
}
myClass.prototype.method2 = function() {
// want to use self here
console.log(this);
}
var my = new myClass();
var eventBus = $({});
eventBus.bind('onMyEvent', my.method);
eventBus.bind('onMyEvent', my.method2);
eventBus.trigger('onMyEvent');
什麼是可能性聲明類使用自原型方法的最佳方式的例子嗎?
沒有,你就不能使用'在原型方法self'。如果你需要'self',不要讓它們成爲原型方法。或者甚至更好,當你將它用作事件處理程序時,將方法綁定到實例。 – Bergi 2014-11-25 08:48:18
您所顯示的代碼中不需要「自我」。註冊事件處理程序時使用「綁定」。 如果你以後需要'self = this',請嘗試'var self = this' 因此它不會污染全球空間。 – Pranav 2014-11-25 08:49:32
@Bergi謝謝。不知道如何標記你的評論作爲回答 – user1167761 2014-11-28 12:20:24