Heim >Web-Frontend >js-Tutorial >Empfohlene forEach-, $.each- und Map-Methoden in JS_Javascript-Kenntnissen

Empfohlene forEach-, $.each- und Map-Methoden in JS_Javascript-Kenntnissen

WBOY
WBOYOriginal
2016-05-16 15:06:411473Durchsuche

forEach ist die grundlegendste der neuen Array-Methoden in ECMA5, nämlich Traversal und Looping. Zum Beispiel das folgende Beispiel:

[1, 2,3, 4].forEach(alert);

Entspricht der folgenden for-Schleife

var array = [1, 2, 3, 4];
for (var k = 0, length = array.length; k < length; k++) {
 alert(array[k]);
}

Array In der neuen Methode von ES5 sind alle Parameter Funktionstypen und der Funktionsrückruf in der forEach-Methode unterstützt 3 Parameter. Der erste ist der durchquerte Array-Inhalt entsprechendes Array. Der dritte ist das Array selbst.

Deshalb haben wir:

[].forEach(function(value, index, array) {
  // ...
});

Vergleichen Sie die Methode $.each in jQuery:

$.each([], function(index, value, array) {
  // ...
});

Sie werden feststellen, dass der erste und der zweite Parameter genau entgegengesetzt sind. Bitte achten Sie darauf und merken Sie sich diese nicht falsch. Das Gleiche gilt später auch für ähnliche Methoden, etwa $.map.

var data=[1,3,4] ; 
var sum=0 ;
data.forEach(function(val,index,arr){
  console.log(arr[index]==val);  // ==> true
  sum+=val            
})
console.log(sum);          // ==> 8

Karte

Die Karte bedeutet hier nicht „Karte“, sondern „Mapping“. [].map(); Die grundlegende Verwendung ähnelt der forEach-Methode:

array.map(callback,[ thisObject]);

Die Parameter des Rückrufs sind ebenfalls ähnlich:

[].map(function(value, index, array) {
  // ...
});

Die Funktion der Map-Methode ist nicht schwer zu verstehen. Sie ist „Mapping“, das heißt, das ursprüngliche Array wird in das entsprechende neue Array „abgebildet“. Im folgenden Beispiel wird das Quadrat eines numerischen Begriffs ermittelt:

var data=[1,3,4]

var Squares=data.map(function(val,index,arr){
  console.log(arr[index]==val);  // ==> true
  return val*val           
})
console.log(Squares);        // ==> [1, 9, 16]

Hinweis: Da forEach und map ECMA5-Methoden zum Hinzufügen neuer Arrays sind, unterstützen Browser unter IE9 dies noch nicht (lieber IE). Alle oben genannten Funktionen können jedoch durch Erweitern des Array-Prototyps erreicht werden, z. B. forEach-Methode:

if (typeof Array.prototype.forEach != "function") {
  Array.prototype.forEach = function() {
    /* 实现 */
  };
}

Die oben genannten Empfehlungen für die Methoden „forEach“, „$.each“ und „map“ in JS sind alle vom Herausgeber geteilten Inhalte. Ich hoffe, dass sie Ihnen eine Referenz geben können, und ich hoffe, dass Sie Script Home unterstützen.

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