JS метод map: преобразование элементов массива в новый массив
JavaScript метод map() является одним из самых полезных методов для работы с массивами. Он позволяет применить определенную функцию к каждому элементу массива и вернуть новый массив с результатами.
Синтаксис метода map() выглядит следующим образом:
array.map(function(currentValue, index, array) {
// Ваш код для обработки текущего элемента
// и возврата значения
}, thisValue);
Параметр currentValue представляет текущий элемент массива, который передается в функцию. Параметр index представляет индекс текущего элемента, а array - полный массив.
Пример использования метода map():
let numbers = [1, 2, 3, 4, 5];
let doubledNumbers = numbers.map(function(number) {
return number * 2;
});
console.log(doubledNumbers);
// Вывод: [2, 4, 6, 8, 10]
В данном примере мы создали массив numbers, содержащий числа от 1 до 5. Затем мы применяем функцию, которая умножает каждый элемент на 2, к каждому элементу массива с помощью метода map(). В результате получаем новый массив doubledNumbers, содержащий удвоенные значения каждого элемента исходного массива.
Более сложные примеры использования метода map() могут включать работу с объектами или использование стрелочных функций.
Пример работы с объектами:
let persons = [
{ name: 'Alice', age: 25 },
{ name: 'Bob', age: 30 },
{ name: 'Charlie', age: 35 }
];
let names = persons.map(function(person) {
return person.name;
});
console.log(names);
// Вывод: ['Alice', 'Bob', 'Charlie']
В данном примере у нас есть массив persons, содержащий объекты с информацией о людях. С помощью метода map() мы создаем новый массив names, содержащий только имена людей.
Пример использования стрелочных функций:
let numbers = [1, 2, 3, 4, 5];
let squaredNumbers = numbers.map(number => number ** 2);
console.log(squaredNumbers);
// Вывод: [1, 4, 9, 16, 25]
В данном примере мы используем стрелочную функцию для упрощения кода. Вместо использования функции внутри map() мы используем стрелочную функцию сокращенного синтаксиса, которая возводит каждый элемент в квадрат.
Метод map() также может быть использован для изменения исходного массива. В этом случае, возвращаемое значение функции необязательно создает новый массив. Однако, рекомендуется использовать метод map() только для создания нового массива и оставлять исходный массив неизменным.
В заключение, метод map() предоставляет мощный инструмент для работы с массивами в JavaScript. Он позволяет легко применять функцию ко всем элементам массива и создавать новый массив с результатами обработки. Это очень полезный метод, особенно при работе с большими коллекциями данных.