Метод JavaScript Array map ()

В этом руководстве вы узнаете, как использовать метод map () массива JavaScript для преобразования элементов в массив.

Английская версия: https://www.javascripttutorial.net/javascript-array-map/

Иногда нужно взять массив, преобразовать его элементы и включить результаты в новый массив.

Обычно вы использовали бы цикл forдля перебора элементов, трансформируя каждый отдельно и отправляя результаты в новый массив.

Давайте посмотрим на пример.

Предположим, у вас есть массив чисел, в котором каждый элемент представляет радиус круга следующим образом:

Ниже мы покажем, как вычислить площадь каждого круга и отправить результат в новый массив.

Результат:

Для этого требуется значительный объем кода, но имейте в виду, что это можно сделать по-другому, используя гораздо меньше кода.

Начиная с ES5, тип массива JavaScript предоставляет метод, map()который позволяет вам преобразовывать элементы массива более чистым и более коротким способом, чем использование цикла for.

Результат:

Разберитесь, как работает этот код:

  • Сначала определите функцию, которая вычисляет площадь круга.
  • Затем передайте функцию circleAreaметоду карты. Метод map()вызовет функцию circleAreaдля каждого элемента массива circlesи вернет новый массив с элементами, которые были преобразованы.

Кроме того, вы можете использовать стрелочную функцию ES6 для достижения того же результата с более чистым кодом:

Детали метода map ()

Синтаксис:

Метод map()вызывает функцию обратного вызова callbackдля всех элементов массива и возвращает новый массив, содержащий результаты.

Метод map()принимает два именованных аргумента, первый - обязательный, второй - необязательный.

Как и в других итерационные методы, такие как every(), some(), filter(), forEach()и sort()функция callback()имеет следующий вид:

Функция callbackимеет 3 аргумента:

  • Аргумент currentElement- это текущий элемент массива, обрабатываемого функцией callback. Это обязательный аргумент.
  • indexИз currentElementобрабатываемых с помощью функции callback.
  • Пройденный объект array.

Аргумент contexObjectметода не map()является обязательным. Если вы передадите это значение, вы можете ссылаться на него с помощью ключевого слова thisвнутри функции callback.

Важно отметить, что метод filter()не изменяет исходный массив. Он создает новый массив всех элементов, преобразованных функцией callback.

Примеры Map ()

В следующем примере показано, как преобразовать массив чисел с помощью внутреннего метода типа Mathкак функции callback:

Результат:

Новый массив содержит квадратные корни чисел массива numbers.

В этом руководстве вы узнали, как использовать этот метод map()для преобразования элементов массива в соответствии с предоставленной функцией.

См. Указатель всех руководств по JavaScript

Учебники по JavaScript

Suggested posts

Мои наиболее используемые ресурсы кодирования

Мои наиболее используемые ресурсы кодирования

На этой неделе я получил электронное письмо от участника ежедневного списка рассылки. Они хотели знать: какие ресурсы вы посещаете ежедневно, еженедельно и ежемесячно? Отличный вопрос! Я рад поделиться некоторыми мыслями о моем рабочем процессе и основных ресурсах, которые я использую.

Серия Lit library - 1: Глубокое погружение в библиотеку lit-html

Серия Lit library - 1: Глубокое погружение в библиотеку lit-html

Цель этой серии блогов — углубиться в библиотеку Lit и получить всестороннее представление о ее уникальных функциях и о том, чем она отличается от других библиотек и фреймворков на рынке. Серия разделена на три части, охватывающие такие темы, как 1.

Related posts

Как спасти планету и заработать деньги

Как спасти планету и заработать деньги

Сколько раз вы, не задумываясь, выбрасывали пластиковую бутылку, стеклянную банку, алюминиевую банку или пакет экологически чистой энергии? Сколько раз вы хотели получить что-то взамен за их переработку? Если вы похожи на большинство людей, ответ, вероятно, много раз. Переработка часто рассматривается как хлопотное дело, рутинная работа или обязанность, не приносящая немедленных или ощутимых выгод.

местоимения очень страшные

Это поражает меня Внезапно, как это часто бывает, Это снова и снова на полпути <Нет, не то, что в Тихом океане, ты темно-бордовый, то, что на карнавале> Каждый громкий заголовок…..

Переосмысление медиа: пять истин Макчесни и будущее коммуникаций

В современном гиперсвязанном мире системы СМИ играют ключевую роль в формировании общественного мнения и, следовательно, в демократическом принятии решений. В своем глубоком анализе политической экономии коммуникации ученый Роберт МакЧесни бросает вызов общепринятому мнению и представляет то, что он называет «пятью истинами» о СМИ.

Больше никаких паролей — как пароли заменят ваш пароль

Больше никаких паролей — как пароли заменят ваш пароль

Во избежание двусмысленности будут использоваться следующие термины; Аутентификатор; Мобильный телефон, используемый для входа на веб-сайт; веб-сайт или приложение, которое пользователь использует для выполнения запроса на вход в систему; Поставщик, предоставляющий данную услугу, например