TypedArray.prototype.map()
Базовая поддержка Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с сентября 2016 года.
Метод map() экземпляров TypedArray создает новый типизированный массив, заполненный результатами вызова предоставленной функции для каждого элемента вызывающего типизированного массива. Этот метод имеет тот же алгоритм, что и Array.prototype.map().
Попробуйте
const uint8 = new Uint8Array([25, 36, 49]); const roots = uint8.map(Math.sqrt); console.log(roots); // Expected output: Uint8Array [5, 6, 7]
Синтаксис
map(callbackFn) map(callbackFn, thisArg)
Параметры
-
callbackFn - Функция, которая будет выполняться для каждого элемента в типизированном массиве. Ее возвращаемое значение добавляется как отдельный элемент в новый типизированный массив. Функция вызывается со следующими аргументами:
-
element - Текущий элемент, обрабатываемый в типизированном массиве.
-
index - Индекс текущего элемента, обрабатываемого в типизированном массиве.
-
array - Типизированный массив, для которого был вызван
map().
-
-
thisArgНеобязательно - Значение, используемое как
thisпри выполненииcallbackFn. См. итерационные методы.
Возвращаемое значение
Новый типизированный массив, каждый элемент которого является результатом работы функции обратного вызова.
Описание
См. Array.prototype.map() для получения более подробной информации. Этот метод не является универсальным и может быть вызван только для экземпляров типизированных массивов.
Примеры
Преобразование типизированного массива в типизированный массив квадратных корней
Следующий код берет типизированный массив и создает новый типизированный массив, содержащий квадратные корни чисел из первого типизированного массива.
const numbers = new Uint8Array([1, 4, 9]); const roots = numbers.map(Math.sqrt); // roots is now: Uint8Array [1, 2, 3], // numbers is still Uint8Array [1, 4, 9]
Преобразование типизированного массива чисел с использованием функции, содержащей аргумент
Следующий код показывает, как map() работает при использовании с функцией, требующей один аргумент. Аргумент будет автоматически присвоен каждому элементу типизированного массива, пока map() проходит по исходному типизированному массиву.
const numbers = new Uint8Array([1, 4, 9]); const doubles = numbers.map((num) => num * 2); // doubles is now Uint8Array [2, 8, 18] // numbers is still Uint8Array [1, 4, 9]
Спецификации
Совместимость с браузерами
| Десктоп | Мобильные | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
map |
45 |
12 |
38 |
32 |
10 |
45 |
38 |
32 |
10 |
5.0 |
45 |
10 |
1.0.0 |
1.0 |
4.0.0 |
См. также
- Polyfill of
TypedArray.prototype.mapincore-js - Руководство по типизированным массивам JavaScript
TypedArrayTypedArray.prototype.forEach()TypedArray.from()Array.prototype.map()Map
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/map