javaScript中的数组迭代方法

ECMAScript5为数组定义了5个迭代方法。

每个方法都接收两个参数:要在每一项上运行的函数  和  (可选的)运行该函数的作用域对象。

传入这些方法中的函数会接收三个参数:数组项的值,该项在数组中的位置,数组对象本身。

  • forEach()  对数组中的每一项运行 给定函数。该方法没有返回值。
  • every()  对数组中的每一项运行 给定函数,如果数组的每一项都返回true,则返回true。
  • some()  对数组中的每一项运行 给定函数,如果数组的任意一项返回true,则返回true。
  • fliter()  如果数组的每一项都返回true,则返回true。返回该函数会返回true的项组成的数组。
  • map()  如果数组的每一项都返回true,则返回true。返回每次函数调用的结果组成的数组。

请看以下例子:

 1 var numbers = [1,2,3,4,5,4,3,2,1];
 2 //every()
 3 var everyResult = numbers.every(function(item, index, array){
 4     return (item > 2);
 5 });
 6 alert(everyResult);  //false
 7 //some()
 8 var someResult = numbers.some(function(item, index, array){
 9     return (item > 2);
10 });
11 alert(someResult);  //true
12 //filter()
13 var filterResult = numbers.filter(function(item, index, array){
14     return (item > 2);
15 });
16 alert(filterResult);  //[3,4,5,4,3]
17 //map()
18 var mapResult = numbers.map(function(item, index, array){
19     return (item * 2);
20 });
21 alert(mapResult);  //[2,4,6,8,10,8,6,4,2]
22 //forEach()
23 numbers.forEach(function(item, index, array){
24     alert(item);
25 });  //多个弹窗分别显示数组中的元素

 

posted @ 2016-03-19 23:22  oSHYo  阅读(246)  评论(0编辑  收藏  举报