In diesem Artikel wird die JavaScript-Array-Iterationsmethode als Referenz vorgestellt. Der spezifische Inhalt ist wie folgt
Jede Methode akzeptiert zwei Argumente: die Funktion, die für jedes Element ausgeführt werden soll, und (optional) das Bereichsobjekt, für das die Funktion ausgeführt werden soll.
Die an diese Methoden übergebenen Funktionen empfangen drei Parameter: den Wert des Array-Elements, die Position des Elements im Array und das Array-Objekt selbst.
forEach() Führen Sie die angegebene Funktion für jedes Element im Array aus. Diese Methode hat keinen Rückgabewert.
every() Führt die angegebene Funktion für jedes Element im Array aus und gibt „true“ zurück, wenn jedes Element im Array „true“ zurückgibt.
some() Führt die angegebene Funktion für jedes Element im Array aus und gibt „true“ zurück, wenn ein Element im Array „true“ zurückgibt.
filter() Gibt true zurück, wenn jedes Element im Array true zurückgibt. Gibt ein Array von Elementen zurück, die diese Funktion als „true“ zurückgibt.
map() Gibt true zurück, wenn jedes Element im Array true zurückgibt. Gibt ein Array der Ergebnisse jedes Funktionsaufrufs zurück.
Bitte sehen Sie sich das folgende Beispiel an:
var numbers = [1,2,3,4,5,4,3,2,1]; //every() var everyResult = numbers.every(function(item, index, array){ return (item > 2); }); alert(everyResult); //false //some() var someResult = numbers.some(function(item, index, array){ return (item > 2); }); alert(someResult); //true //filter() var filterResult = numbers.filter(function(item, index, array){ return (item > 2); }); alert(filterResult); //[3,4,5,4,3] //map() var mapResult = numbers.map(function(item, index, array){ return (item * 2); }); alert(mapResult); //[2,4,6,8,10,8,6,4,2] //forEach() numbers.forEach(function(item, index, array){ alert(item); }); //多个弹窗分别显示数组中的元素
Eine weitere JavaScript-Array-Iterationsmethode, wie folgt
var arr = [3,4,5,6,7,"a"]; var isNum = function(elem,index,AAA){ return !isNaN(elem); } var toUpperCase = function(elem){ return String.prototype.toUpperCase.apply(elem); } var print = function(elem,index){ console.log(index+"."+elem); } /*对数组中的每一项执行测试函数,直到获得对指定的函数返回 false 的项。 使用此方法 可确定数组中的所有项是否满足某一条件,类似于&&的含义*/ var res = arr.every(isNum); console.log(res);//false; /*对数组中的每一项执行测试函数,直到获得返回 true 的项。 使用此方法确定数组中的所有项是否满足条件.类似于||的含义*/ res = arr.some(isNum); console.log(res);//true /*对数组中的每一项执行测试函数,并构造一个新数组,返回 true的项被添加进新数组。 如果某项返回 false,则新数组中将不包含此项*/ res = arr.filter(isNum); console.log(res);//[3, 4, 5, 6, 7] /*对数组中的每一项执行函数并构造一个新数组,并将原始数组中的每一项的函数结添加进新数组。*/ res = arr.map(toUpperCase); console.log(res);//["3", "4", "5", "6", "7", "A"] /*对数组中的每一项执行函数,不返回值*/ res = arr.forEach(print); console.log(res); //自己扩展 /*Array.prototype.every = function(fun,obj) { var len = this.length; if (typeof fun != "function") throw new TypeError(); for (var i = 0; i < len; i++) { if (!fun.call(obj,this[i], i,this)) return false; } return true; };*/
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für alle hilfreich ist, die JavaScript-Array-Iterationsmethode zu erlernen.