Node.js 中的 performanceObserverEntryList.getEntriesByType(type) 函数

2025 年 3 月 13 日 | 阅读 3 分钟

Node.js 中的 performanceObserverEntryList.getEntriesByType(type) 函数用于获取指定的 PerformanceEntry 需要被观察的 PerformanceObserverEntryList。它有助于记录和分析 WebApp 的性能,例如加载资源、导航到特定区域或测量特定指标等任务。

概述

函数: getEntriesByType(type)

类型参数: 一个字符串,指定要返回的性能条目的类型。有许多类型,但最常见的类型是 'mark'、'measure'、'resource' 和 'navigation'。

返回值: 对应于指示类型的性能条目列表。

它是如何工作的?

PerformanceObserver API 是一个 JavaScript API,用于在性能事件发生时实时观察它们。如果触发观察器,它就可以访问包含所有性能条目的 PerformanceObserverEntryList。如果我们在此列表上调用 getEntriesByType(type) 函数,我们就可以按类型排除条目,然后研究特定的性能统计数据。

performanceObserverEntryList.getEntriesByType(type) 的特性

其特性如下:

1. 实时性能数据收集

它实时存储性能数据,这意味着特定机器的输出信息一经产生即可进行分析。这对于需要快速响应某种形式退化的应用程序至关重要。

2. 支持缓冲条目

可以设置观察器以使用缓冲条目,这指的是在设置观察器之前收集的性能数据。这意味着没有性能数据会被遗漏,从而提供应用程序性能的全面视图。

3. 详细了解资源加载

它提供关于每个性能条目的详细信息,例如开始时间、持续时间和使用的资源的实际名称。这对于有效缩短资源加载时间以及查找加载缓慢从而影响应用程序整体速度的资产等任务很有益处。

4. 可自定义的性能监控

当与自定义标记和测量结合使用时,getEntriesByType 提供了开发独特性能指标的灵活性,以满足独特的应用程序需求。这使得在需要时可以监控代码的任何重要部分。

5. 与性能 API 集成

Node.js 中使用时,它与 Performance.Mark()Performance.measure() 等其他性能 API 高度兼容,以开发可识别和监控的性能条目生成场景。

示例

让我们通过一个程序来说明 Node.js 中 performanceObserverEntryList.getEntriesByType(type) 函数。

输出

performanceObserverEntryList.getEntriesByType(type) function in Node.js

performanceObserverEntryList.getEntriesByType(type) 的用例

此函数的一些用例如下:

资源加载分析

  • 通过观察 'resource' 类型条目,我们可以看到 Web 应用程序中不同资源的加载时间,例如图像、脚本和 CSS 文件。这有助于提高资源加载速度。

导航计时

  • 通过观察 'navigation' 条目,可以跟踪页面导航性能指标,例如加载页面所需的时间。这尤其适用于性能审计和确定需要改进的领域。

监控 Web Vitals

  • 如果条目与 Web Vitals(如 FCP 和 LCP)相关,开发人员就可以了解他们的应用程序在实际使用中的性能。

结论

总而言之,Node.js 中的 performanceObserverEntryList.getEntriesByType(type) 函数是 Node.js 中用于性能监控的主要函数之一。分析应用程序的性能信息对开发人员非常有帮助,它允许选择性地检索特定类型的性能条目,这有助于识别需要优化的最关键区域。