JS | map vs forEach



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

Пример: преобразование массива в верхний регистр.



var low = ['a', 'b', 'c'];

var upper = low.map(function(v) {

return v.toUpperCase();

});

// теперь upper = ["A", "B", "C"]

// а low все еще ['a', 'b', 'c']



forEach() ничего не возвращает, а просто вызывает функцию для каждого элемента массива

Пример: вывести измененные элементы массива на странице.



var low = ['a', 'b', 'c'];

var upper = low.forEach(function(v){

console.log(v.toUpperCase());

});

// A , B , C

// upper = undefined, low = ['a', 'b', 'c'];