.map() — один из наиболее часто используемых методов массива javascript. Он часто используется в современных фреймворках, таких как React, из-за его логического динамизма и практичности.
Ранее я писал о методе .foreach(), который позволяет перебирать массив. Этот метод — фантастический способ пройтись по массиву и получить доступ к каждому элементу, хотя, как указано в статье, мы не можем возвращать значения с помощью этого метода, а возвращаемый результат не определен. (Стоит отметить, что в статье также указано, что .foreach(), несмотря на это, может быть очень полезным.)
const numbers = [1, 2, 3, 4, 5]; console.log(numbers.forEach((item) => { return item + 1; })); // Console: undefined
Метод .map основан на этом, но вместо того, чтобы всегда возвращать undefined, он возвращает новый массив с потенциалом для манипулирования каждым элементом. Это чрезвычайно полезно при решении проблем и разработке логики, значительном уменьшении количества строк кода и повышении эффективности.
const numbers = [1, 2, 3, 4, 5]; console.log(numbers.map((item) => { return item + 1 })); // console: [ 2, 3, 4, 5, 6 ] /// SAME OUTPUT IN VIA .foreach() const numbers = [1, 2, 3, 4, 5]; let output = []; numbers.forEach((item) => { output.push(item + 1) }); console.log(output) // console: [ 2, 3, 4, 5, 6 ]
Этот фрагмент показывает, как мы можем быстро достичь желаемого результата при реализации .map(). Также стоит отметить, что мы можем хранить метод .map() в переменной, и, как и в случае с методом .foreach(), мы можем получить доступ к индексу каждого элемента массива.
const numbers = [1, 2, 3, 4, 5]; const mapped = numbers.map((item, index) => { if (index > 2) { return item + 1; } else { return item; } }); console.log(mapped) // console: [ 1, 2, 3, 5, 6 ]
Вышеприведенный фрагмент кода иллюстрирует, как мы можем манипулировать элементами с определенными индексами, когда элементы с индексом 2 или выше добавляют 1, а все остальные индексы возвращают элементы в том же состоянии. Это хранится в переменной, и новый массив возвращается при записи этой переменной в консоль.
Отличный способ попрактиковаться в использовании таких методов, как .map(), — попытаться выполнить задачи в кодовых войнах.
Ранее я писал о методе .split() в своей статье .split() it up!.
Фантастическое ката кодовых войн (вызов в кодовых войнах, вы скоро поймете жаргон…), который я недавно завершил, используя как .split(), так и .map(), это Stop gninnipS My sdroW!.
Почему бы не попробовать и не сообщить мне, как у вас дела? Я напишу решение с некоторыми размышлениями по этому поводу в ближайшем будущем.
Пожалуйста, следите за мной в среде и в Твиттере, чтобы получать обновления и новые истории каждую неделю.
Как всегда спасибо за чтение.