前端性能優(yōu)化簡(jiǎn)介

前端性能優(yōu)化分為如下幾個(gè)方面:

代碼部署

  • 代碼的壓縮與合并
  • 圖片、js、css等靜態(tài)資源使用和主站不同域名地址存儲(chǔ)(同一個(gè)域名會(huì)帶上cookie),從而使得在傳輸資源時(shí)不會(huì)帶上不必要的cookie信息
  • 使用內(nèi)容分發(fā)網(wǎng)絡(luò)CDN
  • 為文件設(shè)置Last-Modified、Expires和Etag等文件頭
  • 使用GZIP壓縮傳送
  • 權(quán)衡DNS查找次數(shù)(使用不同域名會(huì)增加DNS查找)
  • 避免不必要的重定向(加"/")

編碼

html

  • 使用結(jié)構(gòu)清晰,簡(jiǎn)單,語(yǔ)義化標(biāo)簽
  • 避免空的src和href
  • 不要在HTML中縮放圖片

css

  • 精簡(jiǎn)css選擇器(層次不要太深)
  • 把css放到頂部
  • 避免@import方式引入樣式
  • css中使用base64圖片數(shù)據(jù)格式取代圖片,減少請(qǐng)求數(shù),在線(xiàn)轉(zhuǎn)base64網(wǎng)站:http://tool.css-js.com/base64.html,直接在引用圖片處使用base64的數(shù)據(jù)(往往是小圖片這么做——大的圖片數(shù)據(jù)過(guò)多)
  • 使用css動(dòng)畫(huà)來(lái)取代javascript動(dòng)畫(huà)
  • 使用字體圖標(biāo)
  • 使用css sprite(雪碧圖)
  • 使用svg圖形
  • 避免使用css表達(dá)式
  • 避免使用css濾鏡

javascript

  • 減少引用庫(kù)的個(gè)數(shù)
  • 使用reuirejs或seajs異步加載js
  • JS放到頁(yè)面底部引入(這是理想狀態(tài),實(shí)際情況中往往放在頂部)
  • 避免全局查找
  • 使用原生方法
  • 用switch語(yǔ)句代替復(fù)雜的if else語(yǔ)句
  • 使用字面量表達(dá)式來(lái)初始化對(duì)象或數(shù)組
  • 減少語(yǔ)句數(shù),比如說(shuō)多個(gè)變量聲明可以寫(xiě)成一句
  • 使用innerHTML取代復(fù)雜的元素注入
  • 使用事件代理(事件委托)
  • 避免多次訪問(wèn)dom選擇集
  • 高頻觸發(fā)事件設(shè)置使用函數(shù)節(jié)流
  • 使用Web Storage緩存數(shù)據(jù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 關(guān)于前端性能優(yōu)化問(wèn)題詳解 出處:http://segmentfault.com/blogs 前端性能優(yōu)化指南 AJ...
    bennnnn閱讀 1,711評(píng)論 2 4
  • 一、PC端優(yōu)化策略 主要包括網(wǎng)絡(luò)加載類(lèi)、頁(yè)面渲染類(lèi)、CSS優(yōu)化類(lèi)、JavaScript執(zhí)行類(lèi)、緩存類(lèi)、圖片類(lèi)、架構(gòu)...
    puxiaotaoc閱讀 24,903評(píng)論 6 56
  • 圍繞前端的性能多如牛毛,涉及到方方面面,以我我們將圍繞PC瀏覽器和移動(dòng)端瀏覽器的優(yōu)化策略進(jìn)行羅列注意,是羅列不是展...
    流動(dòng)碼文閱讀 743評(píng)論 0 0
  • AJax 優(yōu)化 緩存 Ajax 請(qǐng)求盡量使用GET, 僅取決于cookie數(shù)量 Cookie 優(yōu)化 減少Cooki...
    KeKeMars閱讀 9,470評(píng)論 5 89
  • 等我賺夠了錢(qián)買(mǎi)得起巧克力的時(shí)候,我已經(jīng)不再天天想吃了,當(dāng)我可以隨便玩電腦而沒(méi)人管的時(shí)候,我已經(jīng)懶得打開(kāi)電腦了 。時(shí)...
    嚯嚯嚯_啊閱讀 197評(píng)論 0 0

友情鏈接更多精彩內(nèi)容