2010-01-12 20 views
2

所以我一直在玩一個包含很多js的家庭項目。我一直在使用Script#編寫我自己的庫等。就個人而言,如果我沒有像Script#或GWT這樣的工具來幫助維護它,我不會寫很多js。腳本#和JavaScript過度推動JavaScript?

到目前爲止,它包括這些外部庫: - ASP.NET AJAX - ExtJS的 - 谷歌地圖 - 谷歌Visulisations - 我自己的庫來包裝上面庫和添加額外的功能...

所以這可以成爲一堆js。它在我的電腦上運行良好。然而,我對js/browsers幾乎沒有信心,我擔心加載太多的js會導致瀏覽器死機或性能不佳。

這是一個有效的擔憂?

有沒有人有裝載很多JS成導致性能問題的瀏覽器的經驗嗎?然而,我知道這裏有很多變數,例如瀏覽器類型(我認爲IE比其他人更糟糕),客戶端PC RAM等,但是獲得其他人的經驗是很好的。我不想投入大量的時間進入js,只是發現我正在把自己畫到一個角落。

我越使用Script#越多客戶端類,因爲我將更多處理移動到客戶端上。這會在什麼時候開始成爲問題?我確定瀏覽器可以輕鬆處理100個MS Ajax類,但是對於瀏覽器來說太遠了?

注:我不關心實際的JS文件大小,但更多的被加載運行時環境。

回答

1

與現代的瀏覽器經常佔用250 MB以上的RAM,腳本緩存和優化的JavaScript引擎,保持腳本庫居民將可能是最合理的情況下可以忽略不計加負荷。

的最大瓶頸很可能是腳本的初使加載時間 - 下載和解析他們。但一旦完成,腳本就會被緩存,並且每個頁面的初始化不是很明顯。

0

我同意jspcal,你應該可以加載相當多的JavaScript沒有問題。所有現代瀏覽器中的JavaScript引擎都比012年前快了lot。最初的負載將是最大的問題。如果可能的話,我會建議惰性加載腳本,這些腳本不需要頁面渲染。

此外,Steve Souders有一個關於提高頁面加載時間,這篇文章中,這使加載腳本多種技術無阻塞如很多偉大的材料。

http://www.stevesouders.com/blog/2009/04/27/loading-scripts-without-blocking/

如果你真的關心性能,那麼我會看看您的目標受衆。如果您認爲IE6用戶數量相對較多,那麼可以在IE6上進行測試 - 如果可能的話,在較舊的機器上進行測試。 IE Tester非常適合這個。

0

我很懷疑瀏覽器將永遠崩潰運行您的JS腳本,但它會變得非常慢,可能無法執行您想要的東西。大多數人更關心它運行的速度,而不是如果它會運行!

2

有大量的js文件或大js文件沒有錯,目前正在開發的項目有60多個核心框架庫,每個模塊30個平均有5到6個js文件。

所以唯一關心的是你如何設計你的網站,利用JS最佳實踐&優化技巧。像

  1. 最小化使用YUI或任何其他壓縮庫來解決下載大小問題的JS。
  2. 在您的網絡服務器中啓用適當的緩存以減少文件下載。
  3. 將您的JavaScript放在頁面的底部,或將其作爲單獨的文件。
  4. 使您的AJAX響應可以緩存。
  5. 最後,設計處理on-demamnd腳本加載的頁面。
    - 微軟DOLOTO就是一個很好的例子。下載here

,並檢查了High Performance Web Sites & &最新Even Faster Web Sites由史蒂夫Souders的。它必須爲網絡開發人員閱讀。本書解決了當今Web開發人員面臨的所有常見問題。