美文网首页
js统计页面加载完成需要的时间

js统计页面加载完成需要的时间

作者: 太_2_真_人 | 来源:发表于2021-03-25 00:17 被阅读0次
  • 主要用到了 Performance API,可以统计页面DOM渲染完成需要的时间。

Performance 接口可以获取到当前页面中与性能相关的信息。

function getTiming() {
  setTimeout(() => {
    let t = window.performance.timing;
    let performanceInfo = [{
      key: "Redirect",
      desc: "网页重定向的耗时",
      "value(ms)": t.redirectEnd - t.redirectStart
    },
    {
      key: "AppCache",
      desc: "检查本地缓存的耗时",
      "value(ms)": t.domainLookupStart - t.fetchStart
    },
    {
      key: "DNS",
      desc: "DNS查询的耗时",
      "value(ms)": t.domainLookupEnd - t.domainLookupStart
    },
    {
      key: "TCP",
      desc: "TCP链接的耗时",
      "value(ms)": t.connectEnd - t.connectStart
    },
    {
      key: "Waiting(TTFB)",
      desc: "从客户端发起请求到接收响应的时间",
      "value(ms)": t.responseStart - t.requestStart
    }, {
      key: "Content Download",
      desc: "下载服务端返回数据的时间",
      "value(ms)": t.responseEnd - t.responseStart
    },
    {
      key: "HTTP Total Time",
      desc: "http请求总耗时",
      "value(ms)": t.responseEnd - t.requestStart
    },
    {
      key: "First Time",
      desc: "首包时间",
      "value(ms)": t.responseStart - t.domainLookupStart
    },
    {
      key: "White screen time",
      desc: "白屏时间",
      "value(ms)": t.responseEnd - t.fetchStart
    },
    {
      key: "Time to Interactive(TTI)",
      desc: "首次可交互时间",
      "value(ms)": t.domInteractive - t.fetchStart
    },
    {
      key: "DOM Parsing",
      desc: "DOM 解析耗时",
      "value(ms)": t.domInteractive - t.responseEnd
    },
    {
      key: "DOMContentLoaded",
      desc: "DOM 加载完成的时间",
      "value(ms)": t.domInteractive - t.navigationStart
    },
    {
      key: "Loaded",
      desc: "页面load的总耗时",
      "value(ms)": t.loadEventEnd - t.navigationStart
    }]

    console.table(performanceInfo);
  }, 0)
}

window.addEventListener('load', getTiming, false)

相关文章

  • js统计页面加载完成需要的时间

    主要用到了 Performance API[https://developer.mozilla.org/zh-CN...

  • js延迟加载的六种方式

    js实现延迟加载的几种方法,js的延迟加载有助与提高页面的加载速度 JS延迟加载,也就是等页面加载完成之后再加载 ...

  • JS延迟加载的几种方式

    JS延迟加载,也就是等页面加载完成之后再加载 JavaScript 文件。 JS延迟加载有助于提高页面加载速度。 ...

  • js(script)的引用导入的最佳位置

    js(script)的引用导入的最佳位置 问题例子:页面中img标签在页面加载完成时需要调用一个方法AutoRes...

  • 2018-06-22

    wkWebView 的js交互与js交互 /// 5 页面加载完成之后调用 (void)webView:(WKWe...

  • 前端性能优化-代码优化

    一、JS开销和如何缩短解析时间 JS开销相比其他资源开销大的很多,js开销有加载,加载完成后需要编译解析、最后是执...

  • JS常用代码

    @load js加载时间统计window.onload(); <==> $(document).rea...

  • iOS | WKWebView 动态加载本地JS库文件

    需求: 如果需要在WKWebView加载JS库,或者JS文件,有以下2种方案: 方式一. 可以在 web 页面加载...

  • 多页面应用-性能调优

    多页面应用由多个完整页面构成,资源文件(js, css)不公用,每个页面都需要加载,页面编写过多时,页面加载会贼慢...

  • javascript性能优化

    优化页面加载时间html标签加载顺序浏览器加载和执行script标签引入的js时,会暂停页面渲染,直到代码加载并执...

网友评论

      本文标题:js统计页面加载完成需要的时间

      本文链接:https://www.haomeiwen.com/subject/xxokhltx.html