Heim > Web-Frontend > js-Tutorial > Hauptteil

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

WBOY
Freigeben: 2016-05-16 15:06:41
Original
1451 Leute haben es durchsucht

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]);
}
Nach dem Login kopieren

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) {
  // ...
});
Nach dem Login kopieren

Vergleichen Sie die Methode $.each in jQuery:

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

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
Nach dem Login kopieren

Karte

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

array.map(callback,[ thisObject]);
Nach dem Login kopieren

Die Parameter des Rückrufs sind ebenfalls ähnlich:

[].map(function(value, index, array) {
  // ...
});
Nach dem Login kopieren

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]
Nach dem Login kopieren

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() {
    /* 实现 */
  };
}
Nach dem Login kopieren

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.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage