本文为大家介绍了javaScript数组迭代方法,供大家参考,具体内容如下
每个方法都接收两个参数:要在每一项上运行的函数 和 (可选的)运行该函数的作用域对象。
传入这些方法中的函数会接收三个参数:数组项的值,该项在数组中的位置,数组对象本身。
forEach() 对数组中的每一项运行 给定函数。该方法没有返回值。
every() 对数组中的每一项运行 给定函数,如果数组的每一项都返回true,则返回true。
some() 对数组中的每一项运行 给定函数,如果数组的任意一项返回true,则返回true。
fliter() 如果数组的每一项都返回true,则返回true。返回该函数会返回true的项组成的数组。
map() 如果数组的每一项都返回true,则返回true。返回每次函数调用的结果组成的数组。
请看以下例子:
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); }); //多个弹窗分别显示数组中的元素
另一个javaScript数组迭代方法,如下
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; };*/
以上就是本文的全部内容,希望对大家学习javaScript数组迭代方法有所帮助。
本文向大家介绍JavaScript数组的5种迭代方法,包括了JavaScript数组的5种迭代方法的使用技巧和注意事项,需要的朋友参考一下 ES5为数组定义了5个迭代方法。每种方法都接收两个参数。要在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值。//其中(可选的)这个参数暂时未遇到过。 其中,函数都接收三个参数(数组中的每一项、每一项的索引值、数组对象本身)。 下面是5
本文向大家介绍JS的数组迭代方法,包括了JS的数组迭代方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS的数组迭代方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。
本文向大家介绍详谈JS中数组的迭代方法和归并方法,包括了详谈JS中数组的迭代方法和归并方法的使用技巧和注意事项,需要的朋友参考一下 数组的迭代方法 ES5中为数组定义了5个迭代方法。每个方法都要接收两个参数:要在每一项上面运行的函数和(可选的)运行该函数的作用域对象---影响this的值。 传入方法中的函数会介绍三个参数:1.数组项的值 2. 该项在数组的中位值 3. 数组对象本身; every(
本文向大家介绍浅谈javascript 迭代方法,包括了浅谈javascript 迭代方法的使用技巧和注意事项,需要的朋友参考一下 ECMAScript5为数组定义了5个迭代方法。每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象(即影响this的值)。传入这些方法中的函数会接收三个参数:数组项的值、该项在数组中的位置和数组对象本身。根据使用方法的不同,这个函数执行后
本文向大家介绍javascript中Array数组的迭代方法实例分析,包括了javascript中Array数组的迭代方法实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript迭代的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。
本文向大家介绍JavaScript中数组Array方法详解,包括了JavaScript中数组Array方法详解的使用技巧和注意事项,需要的朋友参考一下 ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的。 1、Array.join()方法 Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返
本文向大家介绍详解JavaScript中数组的reduce方法,包括了详解JavaScript中数组的reduce方法的使用技巧和注意事项,需要的朋友参考一下 介绍 我们先来看看这个方法的官方概述:reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。 你一定也和我一样看的有点迷糊,其实reduce接收的就是一个回调函数,去调用数
本文向大家介绍JavaScript数组的栈方法与队列方法详解,包括了JavaScript数组的栈方法与队列方法详解的使用技巧和注意事项,需要的朋友参考一下 数组(Array)和对象(Object)应该是JavaScript中使用最多也是最频繁的两种类型了,Array提供了很多常用的方法:栈方法、队列方法、重排序方法、操作方法、位置方法、迭代方法等等。 1、Array的栈方法 栈是一种LIFO(La