您的位置:首页 > Web前端 > JavaScript

js数组定义的5个迭代方法

2017-04-04 18:35 477 查看
js为数组定义了5个迭代方法。要在每一项上运行的函数和运行该函数的作用域对象—影响this的值。传入这些方法中的函数会接收三个参数:1.数组项的值;2.该项在数组中的位置;3.数组对象本身。以下是这5个迭代方法的作用

1、every() :对数组中的每一项运行给定函数,如果该函数对每一个项都返回true,则返回true

2、some():对数组中的每一项运行给定函数,如果该函数对任一一项返回true,则返回true

3、filter():对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组

4、foreach():对数组中的每一项运行给定函数,没有返回值

5、map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组

$(function(){
 
var data=[1,2,3];
var result=data.filter(function(item,index,array){
return item>=2;
})
alert(result);   //返回[2,3],得到符合条件的结果组成的数组

var result2=data.every(function(item,index,array){
return item>2;
})
alert(result2);  //返回false,只要数组中有一个值不大于2,则都会返回false,和some()比较

var result3=data.some(function(item,index,array){
return item>2;
})
alert(result3);  //true,只要数组中有一个值满足大于2,则都会返回true,和every()比较

var result4=data.map(function(item,index,array){
return item*2;
})
alert(result4);   //返回[2,4,6],得到计算结果组成的数组
})

最后一个方法是foreach(),它只是对数组中的每一项运行传入的函数,没有返回值,本质上与使用for循环迭代数组一样:

data.foreach(function(item,index,array){

//执行某些操作

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: