JS代碼優(yōu)化技巧之通俗版
如果你問我網(wǎng)站中最影響網(wǎng)站打開速度的是什么?我會告訴是網(wǎng)站中的javascript,簡稱JS。模板中引用的JS文件越多,打開速度越慢,這點(diǎn)我深有體會,不信你看看盧松松博客首頁,使勁優(yōu)化后依然有100K的文件。細(xì)讀完這篇文章,夠你優(yōu)化大半天的了,關(guān)于JS優(yōu)化方法大都脫離不了這三種方法。
JS代碼優(yōu)化技巧之通俗版 性能優(yōu)化 網(wǎng)站優(yōu)化 SEO推廣 第1張
(網(wǎng)頁總大小為155.k,而JS就占了100.3K)
是時候優(yōu)化下JS了
關(guān)于JS優(yōu)化的文章已經(jīng)很多了,大多技術(shù)性很強(qiáng),像什么變量、字符串、類型,就不做介紹了,也不需要介紹,我也不懂,你知道了也沒用。大多數(shù)站長都是“拿來主義”,我只需要告訴JS怎么放,刪那里就可以了。
現(xiàn)在的網(wǎng)站都加的有統(tǒng)計(jì)代碼、分享工具、評論列表、相關(guān)文章插件等工具,而要實(shí)現(xiàn)強(qiáng)大的功能,必須使用JS文件,正是這些JS插件,再增強(qiáng)了網(wǎng)站功能的同時,也給影響了網(wǎng)站速度。
最常用的JS優(yōu)化辦法
通過博客調(diào)用JS來看,目前最影響速度的為無覓插件(952ms),拿福能廣告(434ms)。如果確實(shí)要用可以保留,適當(dāng)?shù)母鶕?jù)官方教材做做優(yōu)化,下面盧松松介紹幾個最常用的JS優(yōu)化方法。
方法一:把不重要的JS放在頁面最底部
這是最簡單,也是效果最好的優(yōu)化方法,把不重要的JS通通放到頁面的最下面body的上面,實(shí)現(xiàn)異步加載,也就是等網(wǎng)頁都加載完了,最后在加載這些不重要的JS,這樣就不影響網(wǎng)頁速度了。
如低調(diào)與華麗模板中公共的util.js公共文件,默認(rèn)效果為,瀏覽網(wǎng)頁時會在網(wǎng)頁中出現(xiàn)“回頂部、寫評論”特效?,F(xiàn)在把wumii(無覓插件JS)和jiathis(分享工具JS)統(tǒng)一整合到util.js文件中了。
JS代碼優(yōu)化技巧之通俗版 性能優(yōu)化 網(wǎng)站優(yōu)化 SEO推廣 第2張
(不重要的JS都放到頁面最底部了)
當(dāng)然,其他網(wǎng)站也需要這樣做:把不重要的JS通通放到頁面最底部。
方法二:合并JS文件
合并JS,也就是減少HTTP請求,少給服務(wù)器請求一次就加快一點(diǎn)速度,而合并兩個原本獨(dú)立的JS就需要點(diǎn)技術(shù)了,但這難不倒我們,告訴大家一個最簡單的方法:
不管三七二十一,先把A文件直接粘貼到B文件中,合并后刪除網(wǎng)頁中的A文件,如果網(wǎng)頁運(yùn)行正常,就OK;如果一些特效失效,那就還原,換C文件合并??倳袃蓚€不沖突的JS文件的。
例如我博客上的百度廣告管家,有6個廣告位,默認(rèn)情況是要進(jìn)行6次HTTP請求的,因?yàn)槭堑谌絁S,一次請求最快要花234ms,而6次請求就就需要花2秒,也就是說因?yàn)檫@個廣告管家打開網(wǎng)頁就要額外增加2秒。
JS代碼優(yōu)化技巧之通俗版 性能優(yōu)化 網(wǎng)站優(yōu)化 SEO推廣 第3張
(第二段JS就是把6個請求變成了1個)
按照官方教程把JS合并后,6個廣告位的廣告請求合并為1次請求,大幅降低js請求次數(shù),有效減少頁面渲染被阻塞的情況,提升廣告加載速度。
方法三:給JS文件減肥
咱不討論什么三目運(yùn)算符、減少對象查找、如何讓JS簡潔,咱就用“JS減肥工具”。通常這類工具會把JS文件中幾百行的代碼壓縮成一行,使體積變小。推薦工具:http://javascriptcompressor.com/
因?yàn)榭招械葐栴},有時候使用這類工具會使JS功能失效,而最簡單的辦法是用Dreamweaver,把壓縮后的JS放入DW中,DW會自動提示你那里有誤,把錯誤的地方另起一行,或還原回去即可。
最后再給個網(wǎng)友的現(xiàn)身說法吧:
JS代碼優(yōu)化技巧之通俗版 性能優(yōu)化 網(wǎng)站優(yōu)化 SEO推廣 第4張
當(dāng)你的站點(diǎn)隨著時間的推移慢慢地做大的時候,你就會發(fā)現(xiàn)很多問題出來的,其中一個就是越來越臃腫龐大,因此運(yùn)行的速度也就會慢了下來。優(yōu)化,盡力去優(yōu)化站點(diǎn),就變得非常重要了。
這些方法都通俗易懂,希望對大家有用!
來源:盧松松博客