這些天我一直在與這些腳本一起,並在一番研究後,我仍然無法找到答案。如何使用Object.prototype向Object構造函數添加函數?
因此,這裏的問題,我想(例如)增加一個功能爲對象(。長度()的情況下,由於本地沒有這個還沒有),我試過:
Object.prototype.length = function() { /* Some fancy work */ }; //It works!
Object.prototype["width"] = function() { /* Some fancy work */ }; //It works!
/* But the following DOESN'T work */
Object.prototype = {
length: function() { /* Some fancy work */ },
width: function() { /* Some other fancy work */ }
};
最後一個不起作用,這是使用像這樣的對象添加函數的最短途徑,我不知道爲什麼。我遇到過這些代碼(例如來自jQuery 1.7.1),我試圖弄清楚它是如何工作的,但我不適用於我。我認爲它必須以某種方式工作,因爲jQuery使用它,你能告訴我怎麼樣?
我已經看到了很多使用這些代碼的人:
a = {
b: "Something",
c: function() {}
}
和其他人使用:
a.prototype = {
b: "Something",
c: function() {}
}
那麼有什麼區別?這與第一個問題有某種關係,所以我很想完全理解它。
SO上的每個帖子都是一個問題。請一次寫出一個問題_,而不是三合一。你應該在9個月後知道這件事! –
我會立即提出第三個問題。感謝提醒和抱歉。 [x] – xx3004