forEach map reduce filter every some-小结

forEach 遍历,数组的每一项做一件事
arr.forEach(function(item,index){
console.log(item);
})

Array.prototype.forEach=function(fn){
for(var i=0,len=this.length;i<len;i++){
fn.apply(this,[this[i],i,this]);
}
}


map 映射,数组通过某种计算产生一个新数组

var newArr=arr.map(function(item,index){
return item*item;
})
Array.prototype.map=function(fn){
var newArr=[];
for(var i=0,len=this.length;i<len;i++){
newArr[i]=fn.apply(this,[this[i],i,this]);
}
}


reduce 累积,数组的前后项做某种计算,累计最终值
var result=arr.reduce(function(prev,next){
return prev+next;
})

Array.prototype.reduce=function(fn){
var result;
for(var i=0,len=this.length;i<len;i++){
result=fn.apply(this,[result,this[i],i,this]);
}
}


filter 筛选,选出符合某种条件的新数组
var newArr=arr.filter(function(item,index){
return item>0;
})
every 判断数组中每个元素都符合要求
var result=arr.every(function(item,index){
return item>0;
})
some判断数组中是否存在符合要求的元素
var result=arr.some(function(item,index){
return item>0})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. tab列表折叠效果 html: 能源系统事业部 岗位名称: 工作地点 岗位名...
    lilyping阅读 5,883评论 0 1
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 6,365评论 1 10
  • Javascript有很多数组的方法,有的人有W3C的API,还可以去MDN上去找,但是我觉得API上说的不全,M...
    顽皮的雪狐七七阅读 9,712评论 0 6
  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 12,378评论 2 17
  • 第二节:《理想国》10:失去时机,就会前功尽弃 紧接着《理想国》9:失去时机,就会前功尽弃而来,在农民、工匠、裁缝...
    鲸北晨阅读 5,096评论 0 6