RTCStatsReport: метод forEach()
Базовая Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с января 2020 года.
Метод forEach() интерфейса RTCStatsReport выполняет переданную функцию один раз для каждой пары «ключ/значение» в объекте RTCStatsReport, в порядке вставки.
Ключи являются уникальными id значениями для отслеживаемых объектов статистики, из которых выводятся статистические данные, а соответствующие значения — объектами словаря статистики объекты словаря статистики.
Метод аналогичен методу Map.prototype.forEach().
Синтаксис
forEach(callbackFn) forEach(callbackFn, thisArg)
Параметры
callbackFn-
Функция, которая выполняется для каждого элемента отчета. Функция вызывается со следующими аргументами:
report-
Отчет о статистике для каждой итерации. Может быть любым из типов объектов словаря статистики.
id-
Уникальная строка, идентифицирующая отслеживаемый объект, из которого выводятся статистические данные.
map-
Итерируемый отчет.
thisArgНеобязательно-
Значение, которое используется в качестве
thisпри выполненииcallbackFn.
Возвращаемое значение
Примеры
Учитывая переменную myPeerConnection, которая является экземпляром RTCPeerConnection, код вызывает getStats() с await для ожидания отчета о статистике. Затем он итерирует отчет, используя RTCStatsReport.forEach(), и фильтрует словари, выбирая только те отчеты, у которых type равен inbound-rtp и kind равен video. Для совпадающих словарей он регистрирует свойство framesPerSecond входного видео.
const stats = await myPeerConnection.getStats();
stats.forEach((report) => {
if (report.type === "inbound-rtp" && report.kind === "video") {
// Log the frame rate
console.log(report.framesPerSecond);
}
});
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
forEach |
58 | 79 | 27 | 45 | 11 | 58 | 27 | 43 | 11 | 7.0 | 58 |
См. также
© 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/RTCStatsReport/forEach