npm 包 @webruntime/performance 使用教程

AI 编程助手,豆包旗下的编程助手,提供智能补全、智能预测、智能问答等能力,节省开发时间,释放脑海中的创造力,支持 VSCode,点击体验 AI

简介

@webruntime/performance 是一个基于 Web API Performance 的高级性能分析工具,能够帮助开发者快速识别和分析 Web 应用程序的性能瓶颈。

该 npm 包以模块化的方式提供性能追踪的核心功能,支持高度自定义的指标收集、性能监测、埋点分析、性能数据可视化等功能,帮助开发者深入探索应用的性能表现,追踪细化至函数甚至代码行级别,便于开发者更好地优化应用的性能。

安装

您可以通过 npm 安装 @webruntime/performance:

--- ------- ----------------------- ------

安装完成后,您可以通过如下方式引入:

----- ------------------ - -----------------------------------

使用

基础使用

  1. 创建 Performance 实例
----- ------------------ - --- ---------------------
  1. 开始记录性能数据
---------------------------
  1. 在应用程序的关键位置调用标记方法
--------------------------- ----- -------
-- -------
--------------------------- ------ -------
  1. 停止记录性能数据
--------------------------
  1. 获取性能数据
----- ------------------ - --------------------------------

API

RuntimePerformance([config])

构造函数

  • 参数:

    • config [Object]:配置对象,可选属性:
      • sampling[Number]:采样率(取值范围 0-1,默认为 1,即全部捕获
      • includeTimingEntries[String[]]:需要包含的 Performance Timing 接口(具体字段名称见下)
      • excludeTimingEntries[String[]]:需要排除的 Performance Timing 接口(同上)
  • 返回值:

    • Performance 实例
----- ------------------ - --- --------------------
  --------- ----
  --------------------- ------------------- ----------------
  --------------------- --------------------
---

runtimePerformance.start()

开始记录性能数据

runtimePerformance.mark(name[, options])

在应用程序的关键位置调用标记方法

  • 参数:
    • name[String]:标记名称
    • options [Object]:选项对象,可选属性:
      • detail[Object]:自定义标记数据
      • timeStamp[Number]:指定时间戳
--------------------------- ----- ------ -
  ------- -
    ----- ----- ------
  -
---

runtimePerformance.measure(name, startMark, endMark[, detail])

在两个标记之间测量时间间隔并记录数据

  • 参数:
    • name[String]:时间间隔名称
    • startMark[String]:起始标记名称
    • endMark[String]:结束标记名称
    • detail[Object]:自定义数据
--------------------------------- ---- ------- ------ ------ ------- ------ ----- -
  ----- ------ ---- -----
---

runtimePerformance.clearMarks([name])

移除所有标记或指定标记

  • 参数:
    • name[String]:标记名称,可选,默认清除所有标记
--------------------------------- ----- -------

runtimePerformance.clearMeasures([name])

移除所有测量数据或指定数据

  • 参数:
    • name[String]:测量名称,可选,默认清除所有测量数据
--------------------------------------- ---- ------- -------

runtimePerformance.stop()

停止记录性能数据

runtimePerformance.getEntries()

获取性能数据 (performance entry 数组)

runtimePerformance.getEntriesByType(type)

获取指定类型的性能数据

  • 参数:
    • type[String]:指定性能数据类型
----- ------------ - ---------------------------------------------

runtimePerformance.getEntriesByName(name, type)

获取指定名称和类型的性能数据

  • 参数:
    • name[String]:指定性能数据名称
    • type[String]:指定性能数据类型
----- ---------------- - ------------------------------------------ ---- ------- ------ -----------

runtimePerformance.toJSON()

获取性能数据的 JSON 字符串

数据类型

@webruntime/performance 支持的数据类型如下:

  • mark:标记
  • measure:测量
  • navigation:导航相关性能数据
  • resource:资源性能数据
  • paint:绘制性能数据

可以通过 performance entry 的 type 属性来区分不同的性能数据类型。

----- ------- - --------------------------------
----- ----------------- - -------------------- -- ---------- --- --------------
----- --------------- - -------------------- -- ---------- --- ------------

总结

@webruntime/performance 可以帮助应用程序的性能优化,让开发者更加深入探索应用的性能表现,追踪更细化, 进而优化应用的性能。

落实使用方式并理解 API,就可以更好地使用 @webruntime/performance 了。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5f2cd2ef3b0ab45f74a8bbab


猜你喜欢

  • npm 包 mongoose-mpath 使用教程

    前言 在前端开发中,使用数据库存取数据以及数据关联是一项必备技能。而在 MongoDB 中,mongoose-mpath 是一个专门用于树形数据管理的插件,可以使得树形数据的增删改查变得非常简单。

    4 年前
  • npm包passport-cas使用教程

    前言 对于前端开发人员来说,使用第三方库或工具是很常见的一件事。其中,npm 包是非常流行的一种方式。本文将介绍一个叫做 passport-cas 的 npm 包,它可以帮助我们在前端中使用 CAS ...

    4 年前
  • npm包passport-google-oauth2使用教程

    在Node.js开发中,我们经常需要实现第三方登录功能,如使用Google OAuth提供的登录。在这里,我将介绍npm包passport-google-oauth2的使用方法,来实现登录的功能。

    4 年前
  • npm 包 passport-trusted-header 使用教程

    在 Web 应用开发中,安全认证和授权非常重要。常见的认证方式包括:用户名/密码、OAuth、OpenID 和 SAML 等。其中,基于 HTTP 请求头的身份认证方案也是比较常见的一种。

    4 年前
  • npm 包 passport-oauth2-refresh 使用教程

    前言 在现代 Web 开发中,用户授权已经成为一个不可或缺的部分。在许多情况下,我们需要使用 OAuth 2.0 协议进行用户授权。在 Node.js 开发中,我们通常使用 Passport 模块来实...

    4 年前
  • npm 包 node-paginate-anything 使用教程

    在前端开发中,经常遇到需要进行分页处理的情况。而使用 npm 包 node-paginate-anything 可以方便快捷地实现分页功能。本文将介绍如何使用该 npm 包实现分页,并附上示例代码。

    4 年前
  • npm 包 restitute 使用教程

    简介 restitute 是一个 JavaScript 库,提供了一个简单而方便的 API,使您可以轻松地创建和管理 RESTful API。 使用此库可以减少重复的代码和提高代码的可读性和可维护性...

    4 年前
  • npm 包 rrule-alt 使用教程

    随着互联网的快速发展,前端技术的重要性越来越突出。开发人员需要掌握各种技术,以便能够快速有效地创建优秀的应用程序。在前端开发中,npm 包是非常重要的工具之一。npm 是 Node.js 的包管理器,...

    4 年前
  • npm 包 @hpcc-js/wasm 使用教程

    简介 @hpcc-js/wasm 是一种在前端使用 WebAssembly 技术的包,通过这个包,可以在前端使用 C++ 或 Rust 编写的代码,在保证较高性能的同时,也可以避免一些 JavaScr...

    4 年前
  • npm 包 wiki-plugin-graphviz 使用教程

    概述 npm 包 wiki-plugin-graphviz 是一个用于在维基百科上渲染 graphviz 声明的工具。它提供了一种简单的方法来向 wiki 页面添加 graphviz 图表。

    4 年前
  • npm 包 excel 使用教程

    在前端开发中,表格是不可或缺的一部分。然而,处理大量复杂的表格数据是一件耗时、耗力的工作。Excel 是一个非常强大的表格处理工具,但是在前端中使用 Excel 进行数据处理又是一个非常复杂的问题。

    4 年前
  • npm 包 xlsx-writestream 使用教程

    前言 xlsx-writestream 是一个 npm 包,用于在 Node.js 中生成 .xlsx 格式的 Excel 文件。它提供了流式写入数据的功能,比传统的将数据全都写入内存再一次性写入文件...

    4 年前
  • npm 包 grunt-jasmine-node-new 使用教程

    在前端开发中,我们需要使用各种工具来提高效率和保证代码质量。其中,测试工具是不可或缺的一部分,而 Jasmine 作为一款非常流行的 JavaScript 单元测试框架,被广泛应用于前端开发中。

    4 年前
  • NPM 包 Material-UI-Next 使用教程

    在前端开发中,UI 组件是很重要的一部分。Material-UI-Next 是一个开源的 React UI 组件和样式库,它为开发人员提供了一个易于使用和高度可定制的 UI 经验。

    4 年前
  • npm 包 ndarray-select 使用教程

    JavaScript 是一门充满活力的语言,它被用于构建用于各种平台的应用程序,其中包括 Web、移动和桌面应用。前端开发的讲究不仅仅只是样式美观和用户友好,更需要有好的性能。

    4 年前
  • npm 包 look-alike 使用教程

    简介 npm 是 Node.js 的包管理工具,通过 npm 包可以方便的获取各类前端库、框架等资源。而 look-alike 是一个可以在命令行中快速查找 npm 包功能相似的工具,可以帮助我们更方...

    4 年前
  • npm 包 kdtree 使用教程

    简介 kdtree 是一种经典的数据结构,它常用于解决包括最近邻问题(即 k-近邻问题)、区域搜索问题等在内的一系列计算机科学问题。而 npm 包 kdtree 就是一种基于 kdtree 实现的快速...

    4 年前
  • npm 包 static-kdtree 使用教程

    什么是 static-kdtree? static-kdtree 是一种 JavaScript 库,这个库用于在高维空间内对数据进行存储和检索。该库通过使用基于分治法的 k-d 树算法,快速构建和管理...

    4 年前
  • npm 包 fscreen 使用教程

    介绍 fscreen 是一款可以在浏览器中使用的开源 JavaScript 库。它提供了一个简单的 API,可以让用户在全屏状态下使用网页。fscreen 支持多种浏览器,包括 Chrome、Fire...

    4 年前
  • npm 包 rollup-plugin-smart-asset 使用教程

    在前端开发中,我们经常需要使用类似于图片、字体等的静态资源文件。这些静态资源通常需要被打包,而打包的过程中就需要使用到 rollup-plugin-smart-asset 这个 npm 包。

    4 年前

相关推荐

    暂无文章