Sobes.tech
Junior

Was ist der Unterschied zwischen den Methoden foreach und map in JavaScript?

sobes.tech KI

Antwort von AI

forEach durchläuft die Elemente eines Arrays und führt für jedes Element eine Rückruffunktion aus, erstellt aber kein neues Array. Es wird für Nebenwirkungen verwendet, wie z.B. das Ausgeben in der Konsole oder das Ändern externer Variablen.

map durchläuft ebenfalls die Elemente eines Arrays und führt für jedes Element eine Rückruffunktion aus. Es gibt jedoch ein neues Array zurück, das die Ergebnisse der Ausführung dieser Funktion für jedes Element enthält. Es wird verwendet, um ein Array in ein anderes zu transformieren.

Beispiel mit forEach:

const numbers = [1, 2, 3];
numbers.forEach(number => console.log(number * 2));
// Ausgabe:
// 2
// 4
// 6
// numbers bleibt [1, 2, 3]

Beispiel mit map:

const numbers = [1, 2, 3];
const doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers);
// Ausgabe: [2, 4, 6]
// numbers bleibt [1, 2, 3]

Der Hauptunterschied besteht darin, dass map eine "funktionale" Methode ist, die das ursprüngliche Array nicht verändert und ein neues zurückgibt, während forEach hauptsächlich für Aktionen an jedem Element ohne Rückgabe eines neuen Arrays gedacht ist.

Kriterium forEach map
Rückgabewert undefined Neues Array
Array-Änderung Erstellt kein neues Array Erstellt ein neues Array
Hauptzweck Durchführung von Aktionen an jedem Element Umwandlung eines Arrays in ein anderes
Methodenkette Wird nicht nativ unterstützt Wird unterstützt (gibt ein Array zurück)