javascript中数组的五种迭代方法

javascript中数组的五种迭代方法

ES5中为数组定义了5个迭代方法。每个方法接收两个参数:要在每一项上运行的函数和运行该函数的作用域(可选)——影响this的值。传入这些方法中的函数会接收三个参数:数组项的值、该项在数组中的位置、数组对象本身。

5个迭代方法(都是对数组中的每一项运行给定函数):
1.every():每一项都返回true,则返回true。
2.filter():返回true的项组成的数组。
3.forEach():没有返回值。
4.map():返回调用函数的结果组成的数组。
5.some():任一项返回true,则返回true。

every()和some()具有相似性,先对比两者:

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():

//filter  
var numbers=[1,2,3,4,5,4,3,2,1];  
var filterResult=numbers.filter(function(item,index,array){  
    return (item>2);  
});  
alert(filterResult);//[3,4,5,4,3] 

map():

//map  
var numbers=[1,2,3,4,5,4,3,2,1];  
var mapResult=numbers.map(function(item,index,array){  
    return item*2;  
});  
alert(mapResult);//[2,4,6,8,10,8,6,4,2] 

最后来看forEach(),本质上与使用for循环迭代数组一样:

//forEach  
var numbers=[1,2,3,4,5,4,3,2,1];  
numbers.forEach(function(item,index,array){  
   //执行某些操作  
});  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,466评论 0 4
  • Java集合 ★★★★★集合框架:用于存储数据的容器。 特点: 1:对象封装数据,对象多了也需要存储。集合用于存储...
    毛子果阅读 3,942评论 0 1
  •   引用类型的值(对象)是引用类型的一个实例。   在 ECMAscript 中,引用类型是一种数据结构,用于将数...
    霜天晓阅读 4,781评论 0 1
  • 从去年11月到现在已经读了23本书(其中含有五六本知乎周刊) 。看着不断增加的行数字,很有成就感,但也总觉得少些什...
    福瑞斯特张阅读 1,930评论 0 1
  • 从来没有无缘无故的爱, 也没有无缘无故的恨, ............ 呃,以上两句不重要, 我想说的是: 时装精...
    雅珺阅读 1,612评论 2 1