Junior
Koja je razlika između metoda foreach i map u JavaScriptu?
sobes.tech АИ
Одговор од АИ
forEach пролази кроз елементе низа и извршава функцију повратног позива за сваки елемент, али не креира нови низ. Користи се за споредне ефекте, као што су исписивање у конзолу или измена спољашњих променљивих.
map такође пролази кроз елементе низа и извршава функцију повратног позива за сваки елемент. Међутим, он враћа нови низ који садржи резултате извршавања те функције на сваки елемент. Користи се за трансформацију једног низа у други.
Пример са forEach:
const numbers = [1, 2, 3];
numbers.forEach(number => console.log(number * 2));
// Излаз:
// 2
// 4
// 6
// низ numbers остаје [1, 2, 3]
Пример са map:
const numbers = [1, 2, 3];
const doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers);
// Излаз: [2, 4, 6]
// низ numbers остаје [1, 2, 3]
Кључна разлика је у томе што је map "функционални" метод који не мења оригинални низ и враћа нови, док је forEach пре свега намењен за извршавање акција на сваком елементу без враћања новог низа.
| Критеријум | forEach |
map |
|---|---|---|
| Враћена вредност | undefined |
Нови низ |
| Мењање низа | Не креира нови низ | Креира нови низ |
| Главна сврха | Извршавање акција на сваком елементу | Трансформација низа у други |
| Лансирање метода | Неподржано по подразумеваној вредности | Подржано (враћа низ) |