淺談頁面裝載js及性能分析方法
一、裝載
先裝載靜態(tài)頁面的引用js文件,然后查找引用文件中是否包含onload函數(shù),比如main.js中包含onload函數(shù),在main.js中查找是否有對其他js文件的引用,優(yōu)先裝載引用js文件,被引用中文件的裝載順序和main.js的順序一致。
裝載完畢后,開始執(zhí)行onload函數(shù)。由于js執(zhí)行順序是順序執(zhí)行的,為提高頁面相應速度,一般做法是在onload中只畫頁面,一些事件的綁定函數(shù),ajax方法等可延后書寫。
二、響應速度分析
1.借助工具進行分析
各大瀏覽器的開發(fā)者工具(最喜歡使用火狐)可以方便的查看各個js文件、html文件、css文件及圖片的裝載及執(zhí)行時間。
2.硬編碼分析
在第一步中我們基本能定位到瓶頸js文件了,在瓶頸js中,可以使用console.time('test')和console.Endtime('test')語句對js函數(shù)及代碼塊掐取執(zhí)行時間。不過console語句只在非IE瀏覽器中執(zhí)行有效,而在IE下會報錯。如果你偏愛使用IE,那就使用時間戳吧。在掐取時,比較方便的方法是,直接掐住整個js文件,然后使用火狐瀏覽器,按F12可以在控制臺中看到目標js中所有函數(shù)及代碼塊的耗時,即可定位到瓶頸代碼處。
相關文章
JavaScript 事件監(jiān)聽實例代碼[兼容IE,firefox] 含注釋
JavaScript事件監(jiān)聽完整實例 含注釋,非常的不錯,大家可以直接使用。2009-08-08javascript實現(xiàn)數(shù)組中的內容隨機輸出
本文實例講述了javaScript數(shù)組隨機排列實現(xiàn)隨機洗牌功能的方法。分享給大家供大家參考。2015-08-08微信小程序開發(fā)實現(xiàn)的IP地址查詢功能示例
這篇文章主要介紹了微信小程序開發(fā)實現(xiàn)的IP地址查詢功能,可實現(xiàn)基于第三方接口的IP地址查詢功能,需要的朋友可以參考下2019-03-03解決axios會發(fā)送兩次請求,有個OPTIONS請求的問題
這篇文章主要介紹了解決axios會發(fā)送兩次請求,有個OPTIONS請求的問題,需要的朋友可以參考下2018-10-10