Performance
===========

Интерфейс **`Performance`** представляет информацию о производительности страницы с временными метками.

Объект этого типа может быть получен в результате вызова атрибута `Window.performance`, доступного только для чтения.

**Примечание:** Этот интерфейс и его составляющие доступны в фоновых потоках выполнения, за исключением случаев, перечисленных ниже. Заметим, что некоторые доступные части интерфейса ещё не документированы (подробнее см. разделы документации Performance Timeline и User Timing). Также заметим, что временные метки производительности относятся к текущему контексту. Если вы создадите метку в основном потоке (или в другом фоновом потоке), то её нельзя будет увидеть в другом фоновом потоке и наоборот.

Свойства
--------

*Интерфейс `Performance` не наследует никаких других свойств.*

`Performance.navigation` (en-US) Только для чтения 

Объект `PerformanceNavigation` (en-US), представляющий тип навигации в текущем контексте браузера, как, например, количество перенаправлений, которые нужно пройти, чтобы получить ресурс. Not available in workers.


`Performance.onresourcetimingbufferfull` (en-US)

Колбэк-функция, реализующая интерфейс `EventTarget`, вызываемая при наступлении события `resourcetimingbufferfull`.


`Performance.timing` (en-US) Только для чтения 

Объект `PerformanceTiming` (en-US), содержащий информацию о производительности, связанной со временем задержек. Not available in workers.

Методы
------

**Интерфейс `Performance` не наследует других методов**.

`Performance.clearMarks()` (en-US)

Удаляет из буфера записей производительности браузера указанную *временну́ю метку*.

`Performance.clearMeasures()` (en-US)

Удаляет из буфера записей производительности браузера указанное *измерение*.

`Performance.clearResourceTimings()` (en-US)

Удаляет все `записи о производительности` (en-US) со свойством `entryType` (en-US) равным "`resource`" из буфера данных производительности браузера.

`Performance.getEntries()` (en-US)

Возвращает список объектов `PerformanceEntry` (en-US), руководствуясь переданным аргументом *filter.*

`Performance.getEntriesByName()` (en-US)

Возвращает список объектов `PerformanceEntry` (en-US), руководствуясь аргументами *name* (название) and *entry type* (тип записи).

`Performance.getEntriesByType()` (en-US)

Возвращает список объектов `PerformanceEntry` (en-US) переданного, как аргумент, *типа записи*.

`Performance.mark()` (en-US)

Создаёт `временну́ю метку` с заданным именем в *буфере записей производительности.*

`Performance.measure()` (en-US)

Создаёт именованную `временну́ю метку` в буфере записей производительности браузера между двумя определёнными метками (известных как *start mark* (начальная метка) и *end mark* (конечная метка), соответственно).

`Performance.now()`

Возвращает объект `DOMHighResTimeStamp`, представляющий количество миллисекунд, прошедших с начала момента отсчёта.

`Performance.setResourceTimingBufferSize()` (en-US)

Устанавливает размер буфера измерения ресурсов браузера равным указанному числу объектов `записей производительности` (en-US) `типа` (en-US) "`resource`".

`Performance.toJSON()` (en-US)

Возвращает json объект, представляющий объект `Performance.`

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

| Specification |
| --- |
| High Resolution Time # sec-performance |
| Performance Timeline # extensions-to-the-performance-interface |
| Resource Timing # sec-extensions-performance-interface |
| User Timing # extensions-performance-interface |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Смотрите также
--------------

* Похожие интерфейсы: `PerformanceTiming` (en-US), `PerformanceNavigation` (en-US).