Spec-Zone.ru › Web APIs

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"] });

Спецификации

Спецификация
Временная шкала производительности
# dom-performanceobserver

Совместимость с браузерами

Рабочий стол Мобильное устройство
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

См. также

  • MutationObserver
  • ResizeObserver
  • IntersectionObserver

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API