JavaScript-Array-Iteration
- Vorherige Seite JS-Array-Sortierung
- Nächste Seite JS-Array Const
Array-Iterationsmethoden führen Operationen auf jedes Array-Element aus.
Array.forEach()
forEach()
Die Methode ruft die Funktion einmal für jedes Array-Element auf (Callback-Funktion).
Beispiel
var txt = ""; var numbers = [45, 4, 9, 16, 25]; numbers.forEach(myFunction); function myFunction(value, index, array) { txt = txt + value + "<br>"; }
注释:Diese Funktion akzeptiert 3 Parameter:
- Projektwert
- Projektindex
- Array selbst
Im obigen Beispiel wurde nur der value-Parameter verwendet. Dieses Beispiel kann neu geschrieben werden als:
Beispiel
var txt = ""; var numbers = [45, 4, 9, 16, 25]; numbers.forEach(myFunction); function myFunction(value) { txt = txt + value + "<br>"; }
所有浏览器都支持 Array.forEach()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.map()
map()
Die Methode erstellt ein neues Array, indem sie die Funktion auf jedem Array-Element ausführt.
map()
Die Methode führt die Funktion nicht auf Array-Elementen ohne Wert aus.
map()
Die Methode ändert nicht das ursprüngliche Array.
Dieser Beispiel multipliziert jeden Wert im Array mit 2:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var numbers2 = numbers1.map(myFunction); function myFunction(value, index, array) { return value * 2; }
Bitte beachten Sie, dass die Funktion 3 Parameter hat:
- Projektwert
- Projektindex
- Array selbst
Wenn die Callback-Funktion nur den value-Parameter verwendet, können die index- und array-Parameter weggelassen werden:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var numbers2 = numbers1.map(myFunction); function myFunction(value) { return value * 2; }
所有浏览器都支持 Array.map()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.filter()
filter()
Die Methode erstellt ein neues Array, das die durch den Test hindurchgegangenen Array-Elemente enthält.
Dieser Beispiel erstellt ein neues Array aus Elementen mit Werten größer als 18:
Beispiel
var numbers = [45, 4, 9, 16, 25]; var over18 = numbers.filter(myFunction); function myFunction(value, index, array) { return Wert > 18; }
Bitte beachten Sie, dass diese Funktion 3 Parameter akzeptiert:
- Projektwert
- Projektindex
- Array selbst
Im obigen Beispiel verwendet die Callback-Funktion keine index- und array-Parameter, daher können sie weggelassen werden:
Beispiel
var numbers = [45, 4, 9, 16, 25]; var over18 = numbers.filter(myFunction); function myFunction(value) { return Wert > 18; }
所有浏览器都支持 Array.filter()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.reduce()
reduce()
Die Methode führt die Funktion auf jedem Array-Element aus, um einen einzigen Wert zu erzeugen (zu reduzieren).
reduce()
Die Methode arbeitet im Array von links nach rechts. Siehe auch reduceRight().
reduce()
Die Methode verringert nicht das ursprüngliche Array.
Dieser Beispielbestimmung wird die Summe aller Zahlen im Array zugeordnet:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var sum = numbers1.reduce(myFunction); function myFunction(total, value, index, array) { return total + value; }
Bitte beachten Sie, dass diese Funktion 4 Parameter akzeptiert:
- 总数(初始值/先前返回的值)
- Projektwert
- Projektindex
- Array selbst
上例并未使用 index 和 array 参数。可以将它改写为:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var sum = numbers1.reduce(myFunction); function myFunction(total, value) { return total + value; }
reduce()
Die Methode kann einen Startwert akzeptieren:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var sum = numbers1.reduce(myFunction, 100); function myFunction(total, value) { return total + value; }
所有浏览器都支持 Array.reduce()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.reduceRight()
reduceRight()
Die Methode führt die Funktion auf jedem Array-Element aus, um einen einzigen Wert zu erzeugen (zu reduzieren).
reduceRight()
Die Methode arbeitet im Array von rechts nach links. Siehe auch reduce().
reduceRight()
Die Methode verringert nicht das ursprüngliche Array.
Dieser Beispielbestimmung wird die Summe aller Zahlen im Array zugeordnet:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var sum = numbers1.reduceRight(myFunction); function myFunction(total, value, index, array) { return total + value; }
Bitte beachten Sie, dass diese Funktion 4 Parameter akzeptiert:
- 总数(初始值/先前返回的值)
- Projektwert
- Projektindex
- Array selbst
上例并未使用 index 和 array 参数。可以将它改写为:
Beispiel
var numbers1 = [45, 4, 9, 16, 25]; var sum = numbers1.reduceRight(myFunction); function myFunction(total, value) { return total + value; }
所有浏览器都支持 Array.reduceRight()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.every()
every()
方法检查所有数组值是否通过测试。
这个例子检查所有数组值是否大于 18:
Beispiel
var numbers = [45, 4, 9, 16, 25]; var allOver18 = numbers.every(myFunction); function myFunction(value, index, array) { return Wert > 18; }
Bitte beachten Sie, dass diese Funktion 3 Parameter akzeptiert:
- Projektwert
- Projektindex
- Array selbst
如果回调函数仅使用第一个参数(值)时,可以省略其他参数:
Beispiel
var numbers = [45, 4, 9, 16, 25]; var allOver18 = numbers.every(myFunction); function myFunction(value) { return Wert > 18; }
所有浏览器都支持 Array.every()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.some()
some()
方法检查某些数组值是否通过了测试。
这个例子检查某些数组值是否大于 18:
Beispiel
var numbers = [45, 4, 9, 16, 25]; var someOver18 = numbers.some(myFunction); function myFunction(value, index, array) { return Wert > 18; }
Bitte beachten Sie, dass diese Funktion 3 Parameter akzeptiert:
- Projektwert
- Projektindex
- Array selbst
所有浏览器都支持 Array.some()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
Array.indexOf()
indexOf()
方法在数组中搜索元素值并返回其位置。
注释:第一个项目的位置是 0,第二个项目的位置是 1,以此类推。
Beispiel
检索数组中的项目 "Apple":
var fruits = ["Apple", "Orange", "Apple", "Mango"]; var a = fruits.indexOf("Apple");
所有浏览器都支持 Array.indexOf()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
语法
array.indexOf(item, start)
item | 必需。要检索的项目。 |
start | 可选。从哪里开始搜索。负值将从结尾开始的给定位置开始,并搜索到结尾。 |
如果未找到项目,Array.indexOf()
返回 -1。
如果项目多次出现,则返回第一次出现的位置。
Array.lastIndexOf()
Array.lastIndexOf()
与 Array.indexOf()
类似,但是从数组结尾开始搜索。
Beispiel
检索数组中的项目 "Apple":
var fruits = ["Apple", "Orange", "Apple", "Mango"]; var a = fruits.lastIndexOf("Apple");
所有浏览器都支持 Array.lastIndexOf()
,除了 Internet Explorer 8 或更早的版本:
Yes | 9.0 | Yes | Yes | Yes |
语法
array.lastIndexOf(item, start)
item | 必需。要检索的项目。 |
start | Optional. Wo beginnt die Suche. Negative Werte beginnen an der Schlussseite an der angegebenen Position und suchen bis zum Anfang. |
Array.find()
find()
Die Methode gibt den Wert des ersten Elements zurück, das den Testfunktionen entspricht.
Dieser Beispielcode sucht (gibt zurück) den Wert des ersten Elements, das größer als 18 ist:
Beispiel
var numbers = [4, 9, 16, 25, 29]; var first = numbers.find(myFunction); function myFunction(value, index, array) { return Wert > 18; }
Bitte beachten Sie, dass diese Funktion 3 Parameter akzeptiert:
- Projektwert
- Projektindex
- Array selbst
Alte Browser unterstützen dies nicht Array.find()
Nachstehend wird die erste Browserversion aufgeführt, die diesen Methoden vollständig unterstützt:
45 | 12 | 25 | 8 | 32 |
Array.findIndex()
findIndex()
Die Methode gibt den Index des ersten Elements zurück, das den Testfunktionen entspricht.
Dieser Beispielcode sucht nach dem ersten Element, das größer als 18 ist:
Beispiel
var numbers = [4, 9, 16, 25, 29]; var first = numbers.findIndex(myFunction); function myFunction(value, index, array) { return Wert > 18; }
Bitte beachten Sie, dass diese Funktion 3 Parameter akzeptiert:
- Projektwert
- Projektindex
- Array selbst
Alte Browser unterstützen dies nicht Array.findIndex()
Nachstehend wird die erste Browserversion aufgeführt, die diesen Methoden vollständig unterstützt:
45 | 12 | 25 | 8 | 32 |
- Vorherige Seite JS-Array-Sortierung
- Nächste Seite JS-Array Const