我目前正在製作一種web應用程序,並且它的一部分通過動態加載和向頁面添加js腳本起作用。爲此,我使用JQuery的$.getScript()
方法加載它。
我將它設置爲緩存。
用我的程序,如果一個腳本已經存在,無論如何它會被加載,看起來像是緩存。我想知道的是,這會對網站和性能產生多大影響。新加載的腳本與現有腳本具有相同的src是否覆蓋前一個腳本,或者是與舊腳本一起添加的新腳本?
此外,由於我的網站是一個AJAX網站,它可能會從不同頁面的幾個腳本,最終隨着時間的推移加載。是否有任何瀏覽器限制可以加載多少個腳本?
如果您不小心,預優化可能是浪費精力。請閱讀雅虎的[加速您的網站的最佳實踐](http://developer.yahoo.com/performance/rules.html),以獲取關於如何看待這一整體的幾點建議,但請務必記住每個網站的不同之處,所以一些技巧並不總是必要的,有用的,或者可以(我想)證明適得其反。 – 2012-03-11 22:30:46
如果它被緩存,除非緩存副本已過期,否則您的瀏覽器不會要求另一個副本,否則您會強制它執行完整請求。此外,您本身對包含的JavaScript文件沒有任何限制(據我所知),但如果您添加了數百或數千個「腳本」,則還有其他問題。如果您真正擔心的是您可能會進行多次外部調用來加載相同的腳本,則應通過其他方式解決該問題(例如在請求之前檢查文件是否已包含在內)。 – 2012-03-11 22:33:39
只要通過我的控制檯,它會列出那裏的同一個文件,但說它緩存。另外,我實際上需要它每次都會觸發/加載,因爲它具有我需要它調用的document.ready位。 – 2012-03-11 22:42:09