前端性能監(jiān)控performance對象解析

前端性能監(jiān)控對象window.performance有四個屬性

window.performance={
    memory:{
      totalJSHeapSize:'可使用內(nèi)存大小',
      usedJSHeapSize:'已使用內(nèi)存大小',
      jsHeapSizeLimit:'內(nèi)存大小限制',
    },
    /*
      type的值:
      0  即TYPE_NAVIGATENEXT 正常進入頁面(非刷新、非重定向等)
      1  即TYPE_RELOAD 通過window.location.reload()刷新的頁面
      2  即TYPE_BACK_FORWARD 通過瀏覽器的前進后退按鈕進入的頁面(歷史記錄)
      255 即TYPE_UNDEFINED 非以上方式進入的頁面
    */
    navigation:{
      redirectCount:0,//如果有重定向的話,頁面通過幾次重定向跳轉(zhuǎn)而來
      type:0 
    },
    timing:{
      //在同一個瀏覽器上下文中,前一個網(wǎng)頁(與當(dāng)前頁面不一定同域)unload的時間戳,如果無前一個網(wǎng)頁unload,則與fetchStart值相等;
      navigationStart:'時間戳',
      // 前一個網(wǎng)頁(與當(dāng)前頁面同域)unload的時間戳,如果無前一個網(wǎng)頁unload或者前一個網(wǎng)頁與當(dāng)前頁面不同域,則值為0
      unloadEventStart: 0,
      //  和unloadEventStart 相對應(yīng),返回前一個網(wǎng)頁unload事件綁定的回調(diào)函數(shù)執(zhí)行王弼的時間戳
      unloadEventEnd: 0,
      // 第一個HTTP重定向發(fā)生時的時間,有跳轉(zhuǎn)且是同域名內(nèi)部的重定向才算,否則值為0
      redirectStart: 0,
      // 最后一個HTTP重定向完成時的時間,有跳轉(zhuǎn)切爾是同域名內(nèi)部的重定向才算,否則值為0
      redirectEnd: 0,
      // 瀏覽器準(zhǔn)備好使用HTTP請求抓取文檔的時間,這發(fā)生在檢查本地緩存之前
      fetchStart:'時間戳',
      // DNS域名查詢開始的時間,如果使用了本地緩存(即無DNS查詢)或持久連接,則與fetchStart值相等
      domainLookupStart:'時間戳',
      // DNS域名查詢完成的時間,如果使用了本地緩存(即 無DNS查詢)或持久連接,則與fetchStart值相等
      domainLookupEnd: '時間戳',
      // HTTP(TCP)開始建立連接的時間,如果是持久連接,則與fetchStart值相等;如果在傳輸層發(fā)生了錯誤且重新建立了連接,則這里顯示的是新建立連接的時間
      connectStart: '時間戳',
      // HTTP(TCP)完成建立連接的時間(握手),如果是持久連接,則與fetchStart相等;如果是在傳輸層發(fā)生了錯誤且重新建立連接,則這里咸寧市的是新建立的連接完成的時間;這里的握手結(jié)束,包括了安全連接建立完成,SOCKS授權(quán)通過;
      connectEnd: '時間戳',
      // HTTPS連接開始的時間,如果不是安全連接,則值為0;
      secureConnectionStart: 0,
      // HTTP請求讀取真實文檔開始的時間(完成建立連接),包括從本地讀取緩存,連接錯誤時這里顯示的是新建立的連接的時間
      requestStart:'時間戳',
      // HTTP開始接收響應(yīng)的時間(獲取到第一個字節(jié)),包括從本地讀取緩存
      responseStart:'時間戳',
      // HTTP響應(yīng)全部接收完畢的時間(獲取到最后一個字節(jié)),包括從本地讀取的緩存
      responseEnd:0,
      // 開始解析渲染DOM樹的時間,此時Document.readyState變?yōu)閕nteractive,并將拋出readystatechange相關(guān)事件(這里只是DOM樹解析完畢,這時候并沒有開始加載網(wǎng)頁內(nèi)的資源)
      domLoading:0,
      // 完成解析DOM樹的時間,Document,readyState變?yōu)閕nteractive,并將拋出readystatechange相關(guān)事件(這時候并沒有開始加載網(wǎng)頁資源)
      dominteractive:0,
      // DOM解析完成后,網(wǎng)頁內(nèi)資源加載開始的時間,在DOMContentLoaded事件拋出之前發(fā)生
      domContentLoadedEventStart:0,
      // DOM解析完成后,網(wǎng)頁內(nèi)資源加載完成的時間
      domContentLoadedEventEnd:0,
      // DOM樹解析完成,且資源也準(zhǔn)備就緒的時間,Document.readyState變?yōu)閏omplete,并將拋出readystatechange相關(guān)事件
      domComplete:0,
      // load事件發(fā)送給文檔,也即load回調(diào)函數(shù)開始執(zhí)行的時間,如果沒有綁定load事件,值為0
      loadEventStart:0,
      // load事件的回調(diào)函數(shù)執(zhí)行完畢的時間
      loadEventEnd:0
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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