我有一個很多引用.js文件的網站;這些都是相當小的文件,但我想保持我的方法由主題/功能分開。jQuery/JavaScript - 當有很多小的.js文件時性能問題?
將所有方法保存在一個.js文件中還是沒有問題,因爲許多(〜20 - 30)小文件都只包含一些行?
我有一個很多引用.js文件的網站;這些都是相當小的文件,但我想保持我的方法由主題/功能分開。jQuery/JavaScript - 當有很多小的.js文件時性能問題?
將所有方法保存在一個.js文件中還是沒有問題,因爲許多(〜20 - 30)小文件都只包含一些行?
通過一切手段讓它們分離開發,但您應該考慮將它們捆綁在一起製作成一個文件。
有一個在sitepoint.com
對於每一個文件,一個HTTP 請求被髮送到服務器,並 一個很好的討論,然後在瀏覽器請求等待下一個文件前一個響應 。 瀏覽器 的限制(或限制)通常會阻止並行下載。 這意味着對於每個文件,你的 等待請求到達 服務器,服務器處理 請求和回覆(包括 文件內容本身)到達你。把 端到端,其中的幾個可以使頁面加載時間有很大的差異 。
事實上,擁有如此多的引用文件是一個壞主意。性能問題的基本思想是儘量減少HTTP請求(至少在生產服務器上)。看看這http://developer.yahoo.com/performance/rules.html#num_http
有沒有人有一個聰明的腳本,可以爲你做這個?我寫了一個自定義的nant任務,它使用YUI壓縮器來縮小我的css和js,但是將組合添加到它將會很有用。你們如何處理這個問題?
我不知道你在服務器端使用了什麼框架(如果有的話),但Ruby on Rails有一個腳本包含函數,根據設置(例如測試或生產)它可以創建大量腳本標記測試模式),或者創建一個標記,並將所有腳本連接成一個(可選擇使用某些插件壓縮)文件。我相信許多其他框架也支持這樣的事情。
更新:我只記得: 可以allso手動壓縮(通過剝離空格和註釋,縮短變量名等),並結合JavaScript文件和CSS文件與Yahoo! UI Library: YUI Compressor。在壓縮之前,請確保您的JavaScript正確無誤,請嘗試JSLint。