Heim > Web-Frontend > js-Tutorial > Iterationsmethoden von Arrays in JS: Filter, Reduce, Every, Some

Iterationsmethoden von Arrays in JS: Filter, Reduce, Every, Some

Guanhui
Freigeben: 2020-05-09 09:14:19
nach vorne
2596 Leute haben es durchsucht

Die Iterationsmethoden von Arrays in JS sind forEach, Map, Filter, Reduce, Every, Some

Im täglichen Prozess der Verarbeitung von JS-Arrays verwenden wir normalerweise die Implementierung von for-Schleifen Im Folgenden werden einige häufig verwendete Array-Iterationsmethoden außer For-Schleifen zusammengefasst >

let a = [1,2,3];
a.forEach(function(value,i){
    console.log("第" + (i + 1) + "项 :" +  value)
})
// 第1项 :1
// 第2项 :2
// 第3项 :3
Nach dem Login kopieren

map (Mapping)

ähnelt der Funktion forEach, aber map hat einen Rückgabewert und generiert ein neues Array, ohne das ursprüngliche Array zu ändern

let a = [1,2,3];
a.map(function(value,i){
    return value * 2
})
// 第1项 :2
// 第2项 :4
// 第3项 :6
Nach dem Login kopieren

Vergleich zwischen Map und forEach:

// 没有返回值的forEach:
let a = [1, 2, 3];
a = a.forEach(function (value, i) {
    return value * 2 // undefine
})
// 有返回值的map:
let b = [1, 2, 3];
b = b.map(function (value, i) {
    return value * 2 // [2,4,6]
})
Nach dem Login kopieren
Mögliche Fallstricke: Es gibt Komma-Trennzeichen zwischen den von Map verarbeiteten Daten

Grund: Nach der Map-Durchquerung handelt es sich immer noch um ein Array und die Array-Elemente werden durch getrennt Kommas. Beim Einfügen in das DOM werden auch die Kommatrennzeichen zwischen den Array-Elementen eingefügt. Nach dem Durchlaufen der Karte wird dieses Problem durch direkte Verkettung behoben it: Auf die Karte folgt .join('')

reduce (kumulative)

reduce()-Methode empfängt eine Funktion als Akkumulator, jeder Wert im Array Die Reduktion beginnt (von links nach rechts) und endet mit der Berechnung auf einen Wert.

reduce() kann als Funktion höherer Ordnung für die Funktion compose verwendet werden.

Hinweis: Reduce() führt die Rückruffunktion nicht für ein leeres Array aus.

Berechnen Sie die vorherigen und nachfolgenden Elemente

let a = [1, 2, 3];
a = a.reduce(function (prev, next) {
    return prev + next // 1+2+3 = 6
})
Nach dem Login kopieren

Filter (Filter)

Filtern Sie die Werte heraus, die die Bedingungen nicht erfüllen und ein neues Array zurückgeben

let a = [1, 2, 3];
a = a.filter(function (value, i) {
    return value > 2 
})
console.log(a) // 3
Nach dem Login kopieren

every (all)

Bestimmen Sie, ob jedes Element die Bedingungen erfüllt. Wenn ja, geben Sie true zurück, andernfalls false

let a = [1, 2, 3];
a = a.every(function (value, i) {
    return value > 2 
})
console.log(a) // false
Nach dem Login kopieren

einige (willkürlich)

Beurteilen Sie, ob eines der einzelnen Elemente die Bedingung erfüllt. Wenn ja, geben Sie true zurück, andernfalls false

let a = [1, 2, 3];
a = a.every(function (value, i) {
    return value > 2 
})
console.log(a) // true
Nach dem Login kopieren

Empfohlenes Tutorial: "

JS-Tutorial

Das obige ist der detaillierte Inhalt vonIterationsmethoden von Arrays in JS: Filter, Reduce, Every, Some. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:zhihu.com
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