Spec-Zone.ru › JavaScript

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]

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

Спецификация
ECMAScript® 2027 Language Specification
# sec-%typedarray%.prototype.map

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

Десктоп Мобильные Сервер
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.map in core-js
  • Руководство по типизированным массивам JavaScript
  • TypedArray
  • TypedArray.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

Spec-Zone.ru

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