PerformanceObserver
Базовая поддержка Широко доступна *
Эта функция хорошо отработана и работает на многих устройствах и версиях браузера. Она доступна в браузерах с сентября 2015 года.
* Некоторые части этой функции могут иметь разный уровень поддержки.
Примечание: Эта функция доступна в Web Workers.
Интерфейс PerformanceObserver используется для наблюдения за событиями измерения производительности и получения уведомлений о новых записях производительности, которые записываются в временной шкале производительности браузера.
Конструктор
PerformanceObserver()-
Создаёт и возвращает новый объект
PerformanceObserver.
Статические свойства
-
PerformanceObserver.supportedEntryTypesТолько для чтения -
Возвращает массив значений
entryType, поддерживаемых пользовательским агентом.
Методы экземпляра
PerformanceObserver.observe()-
Указывает набор типов записей для наблюдения. Функция обратного вызова наблюдателя производительности будет вызвана, когда для одного из указанных
entryTypesбудет записана запись производительности. PerformanceObserver.disconnect()-
Останавливает вызов обратного вызова наблюдателя производительности для получения записей производительности.
PerformanceObserver.takeRecords()-
Возвращает текущий список записей производительности, сохранённых в наблюдателе производительности, очищая его.
Примеры
Создание PerformanceObserver
В следующем примере создается PerformanceObserver, который отслеживает события "mark" (PerformanceMark) и "measure" (PerformanceMeasure). Функция обратного вызова perfObserver предоставляет list (PerformanceObserverEntryList), которая позволяет получить наблюдаемые записи производительности.
function perfObserver(list, observer) {
list.getEntries().forEach((entry) => {
if (entry.entryType === "mark") {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
}
if (entry.entryType === "measure") {
console.log(`${entry.name}'s duration: ${entry.duration}`);
}
});
}
const observer = new PerformanceObserver(perfObserver);
observer.observe({ entryTypes: ["measure", "mark"] });
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильное устройство | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
PerformanceObserver |
52 | 79 | 57 | 39 | 11 | 52 | 57 | 41 | 11 | 6.0 | 52 |
PerformanceObserver |
52 | 79 | 57 | 39 | 11 | 52 | 57 | 41 | 11 | 6.0 | 52 |
disconnect |
52 | 79 | 57 | 39 | 11 | 52 | 57 | 41 | 11 | 6.0 | 52 |
observe |
52 | 79 | 57 | 39 | 11 | 52 | 57 | 41 | 11 | 6.0 | 52 |
supportedEntryTypes_static |
73 | 79 | 68 | 60 | 13 | 73 | 68 | 52 | 13 | 11.0 | 73 |
takeRecords |
65 | 79 | 60 | 52 | 15 | 65 | 60 | 47 | 15 | 9.0 | 65 |
worker_support |
62 | 79 | 57 | 49 | 11 | 62 | 57 | 46 | 11 | 8.0 | 62 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceObserver