Heim >Web-Frontend >js-Tutorial >Was ist der Hauptunterschied zwischen den JavaScript-Methoden „forEach()' und „map()'?

Was ist der Hauptunterschied zwischen den JavaScript-Methoden „forEach()' und „map()'?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-20 05:38:13429Durchsuche

What's the Key Difference Between JavaScript's `forEach()` and `map()` Methods?

Die Unterschiede zwischen .forEach() und .map() in JavaScript verstehen

Über den primären Unterschied hinaus, mit dem .forEach() arbeitet Während .map() ein neues Array erstellt, während das ursprüngliche Array erstellt wird, müssen einige Nuancen berücksichtigt werden. Dies wird im bereitgestellten Code veranschaulicht:

function practice(i) {
  return i + 1;
}

var a = [-1, 0, 1, 2, 3, 4, 5];
var b = [0];
var c = [0];
console.log(a);
b = a.forEach(practice);
console.log("=====");
console.log(a);
console.log(b);
c = a.map(practice);
console.log("=====");
console.log(a);
console.log(c);

Ausgabe:

[-1, 0, 1, 2, 3, 4, 5]
=====
[-1, 0, 1, 2, 3, 4, 5]
undefined
=====
[-1, 0, 1, 2, 3, 4, 5]
[0, 1, 2, 3, 4, 5, 6]

Erklärung:

  • forEach(): Diese Methode iteriert über jedes Element im Array, aber es gibt keinen Wert zurück. Im Beispiel führt a.forEach(practice) die Übungsfunktion für jedes Element in „a“ aus, aber das Ergebnis (undefiniert) wird „b“ nicht zugewiesen. Daher bleibt 'b' unverändert.
  • map(): Diese Methode erstellt ein neues Array, indem sie jedes Element im ursprünglichen Array transformiert. Im Beispiel wendet a.map(practice) die Übungsfunktion auf jedes Element in „a“ an und gibt ein neues Array „c“ mit den transformierten Werten zurück.

Hauptunterschiede:

  • Rückgabewert: forEach() gibt nichts zurück, während map() einen neuen erstellt array.
  • Operation: forEach() iteriert und führt Nebenwirkungen aus, während map() iteriert und transformiert.
  • Nebeneffekte: forEach( ) kann das ursprüngliche Array durch die Callback-Funktion mutieren, während map() nur das transformiert Werte.

Das Verständnis dieser Unterschiede ist entscheidend für die Auswahl der geeigneten Methode zur Array-Manipulation in JavaScript.

Das obige ist der detaillierte Inhalt vonWas ist der Hauptunterschied zwischen den JavaScript-Methoden „forEach()' und „map()'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn