Книга: Выразительный JavaScript
Преобразования при помощи map
Преобразования при помощи map
Допустим, есть у нас массив объектов, представляющих людей, который был получен фильтрацией массива предков. Но нам нужен массив имён, который было бы проще прочесть.
Метод map
преобразовывает массив, применяя функцию ко всем его элементам и строя новый массив из возвращаемых значений. У нового массива будет та же длина, что у входного, но его содержимое будет преобразовано в новый формат.
function map(array, transform) {
var mapped = [];
for (var i = 0; i < array.length; i++)
mapped.push(transform(array[i]));
return mapped;
}
var overNinety = ancestry.filter(function(person) {
return person.died - person.born > 90;
});
console.log(map(overNinety, function(person) {
return person.name;
}));
// ? ["Clara Aernoudts", "Emile Haverbeke",
// "Maria Haverbeke"]
Что интересно, люди, которые прожили хотя бы до 90 лет – это те самые, что мы видели ранее, которые были молоды в 1920-х годах. Это как раз самое новое поколение в моих записях. Видимо, медицина серьёзно улучшилась.
Как и forEach
и filter
, map
также является стандартным методом у массивов.
- 15.3. Обработка изображений при помощи RMagick
- SEMAPHORE COUNT
- Факторы помощи
- SERVER CLIENT MAPPING
- NETMAP target
- Nmap
- Получение помощи
- Получение помощи по работе с книгой и компакт-диском
- Получение помощи по Windows SharePoint Services 3.0
- 2.7 Преобразования типов
- Можно ли при помощи горячих клавиш переводить компьютер в спящий режим?
- Модификаторы спецификации преобразования, используемые в функции printf( )