我試圖通過使用for循環一次向對象添加多個方法。通過JavaScript中的循環在對象的原型中添加方法
我所擁有的是一個數組,其中包含點擊,加載等幾個事件的名稱在數組中,因此,將這些事件插入到我的庫對象中真的很容易。但是,我無法通過循環將方法添加到我的對象中。
這裏是我的代碼:
function(something) myLibrary {
if(this === window) {return new myLibrary }
this.e = document.getElementById(something);
}
var eventsArr = ['click','load','drag','drop'];
var addEventToProto = function (method) {
if(!myLibrary.hasOwnProperty(method)) {
myLibrary.prototype[method] = function (fn) { addEventListener(this.e, method, fn); };
}
};
for (i = 0; i < eventsArr.length; i += 1) {
addEventToProto(eventsArr[i]);
};
如果您需要更多的信息,那麼請發表評論。
對不起,忘了編輯代碼。 – akash4eva
'myLibrary'是一個對象,而不是一個函數。它沒有名爲'prototype'的屬性。 – basilikum
@basilikum我其實愚蠢地寫了我的圖書館的樣本。請再看一遍。還有一件事,我把我的實際圖書館編入了IIFE(只是說)。 – akash4eva