0
爲了優化性能,我使用單個JavaScript文件處理我正在處理的所有網頁。 我使用的基本結構如下:在JavaScript中使用單實例函數的原型
(function($) {
// Shared functions ...
// A function for every page
function Page1() {
}
Page1.prototype = {
init: function() {
//...
},
//more functions
};
// more pages
$(document).ready(function() {
if ($('#page1uniqueidentifier').length) {
var page1 = new Page1();
page1.init();
}
// more pages
}
}) (jQuery);
我不是一個有經驗的JavaScript程序員,所以我一直在尋找了很多最佳實踐和構建我的代碼不同的方式和我已經結束選擇了這一個,但我真的不知道這件事,我有幾個問題:
是否值得使用的原型,如果我永遠不會有一個多頁的單個實例?我想我理解原型是如何工作的,而且我沒有在那裏獲得任何表現。但是我將它當作最佳實踐來使用,因爲在不同實例存在的情況下,這些函數在每個實例中都是相同的。
有沒有更好的方法來構造代碼?
我應該把init函數的調用放在構造函數中,然後只調用新的Page1()?
function Page1() { this.init(); } if ($('#page1uniqueidentifier').length) { new Page1(); }
好的,謝謝你的回答。關於使用單個文件,這並不完全如此,因爲我們爲外部腳本和不同模塊分別提供了文件。但是我們可以爲每個網站模塊處理所有自定義代碼,每個網站模塊可以有多個頁面。 無論如何,即使我將代碼分離到不同的文件中,並在稍後將它連接起來,我應該控制第2頁代碼不會在第1頁中執行正確嗎? 關於構造函數,由於初始化代碼通常非常廣泛,所以我將它放在原型中,以便它不會被重複用於每個實例。 – 2012-07-19 14:21:05