2016-07-08 7 views
0

Ich sah diese Funktion, obwohl es funktioniert gut, aber ich bin etwas verwirrt über die Funktion Ausdrücke. Hier ist der CodeWarum gibt es verschiedene Argumente in dieser JavaScript-Funktion

 mapForEach(arr, fn) { 
      var newArr = []; 
      for (var i = 0; i < arr.length; i++) { 
       newArr.push(fn(arr[i])) 

     } 
     return newArr; 
     } 

kann jemand erklären, was dieser ziemlich komplizierte Code tatsächlich tut?

+0

** Was der Code tut? ** => Das gleiche wie 'var newArr = arr.map (function (el) { return fn (el) ; }); 'Grundsätzlich ruft diese Funktion' fn' für jedes Element im Array auf und gibt das aktualisierte Array zurück. – Tushar

+0

Es gibt ein neues Array zurück mit dem Ergebnis, dass die Funktion jedes Element aufruft. –

Antwort

1

Hier können Sie var array = [1, 2, 3, 5]; sagen haben und dann laufen var array2 = mapForEach(array, function(i) { return i * 2; }) array2 dann [2, 4, 6, 10] enthalten würde.

So gibt es ein neues Array, wo Sie die Möglichkeit haben, jeden Datensatz mit einer Funktion

1

mapForEach ein Array aufzählt zu ändern und ruft eine bereitgestellte Funktion auf jedes Element.

Beispiel:

var a = [1, 2, 3]; 

console.log(mapForEach(a, (x) => x * 2)); 

ein neues Array mit den Werten erzeugen würde (und auf der Konsole):

[2, 4, 6]

Verwandte Themen