Модуль использует общие с глобальными объектами Web Performance временную шкалу и конструкторы:
import { performance } from "node:perf_hooks";
performance.mark("start");
performance.measure("work", "start");
console.log(performance.getEntriesByName("work").length); // 1Экспорты включают performance, now, функции mark/measure/query/clear,
конструкторы Performance, nodeTiming, createHistogram,
monitorEventLoopDelay, eventLoopUtilization и timerify.
performance === globalThis.performance, а конструкторы модуля — те же объекты,
что и их глобальные аналоги. nodeTiming также входит в
performance.getEntriesByType("node").
Примечания о совместимости
constants— пустой объект.nodeTimingсообщает этапы запуска в миллисекундах относительно запуска процесса;v8Start,environment,loopExitиidleTimeравны нулю.
Reference
Status: Partial · Not measured · since 1.1.0
Exports
| Export | Kind | Status | Notes |
|---|---|---|---|
PerformanceEntry | class | Full | name, entryType, startTime, duration, detail, toJSON() |
PerformanceMark | class | Full | |
PerformanceMeasure | class | Full | |
PerformanceNodeTiming | class | Full | nodeStart, v8Start, environment, bootstrapComplete, loopStart, loopExit, idleTime |
PerformanceObserverEntryList | class | Full | getEntries(), getEntriesByName(), getEntriesByType() |
PerformanceObserver | class | Full | observe(), disconnect(), takeRecords(), PerformanceObserver. |
now() | function | Full | Returns the current high-resolution millisecond timestamp relative to timeOrigin |
mark() | function | Full | Creates a performance mark with the given name |
measure() | function | Full | Creates a performance measure between two marks or timestamps |
getEntries() | function | Full | Returns a list of all performance entries |
getEntriesByName() | function | Full | Returns performance entries filtered by name |
getEntriesByType() | function | Full | Returns performance entries filtered by type (“mark” or “measure”) |
clearMarks() | function | Full | Removes all marks, or only marks with the given name |
clearMeasures() | function | Full | Removes all measures, or only measures with the given name |
timeOrigin | property | Full | The high-resolution millisecond timestamp at which the process started |
nodeTiming | property | Full | Timing information about the Node.js process lifecycle |
Not implemented
Performance, PerformanceResourceTiming.