Es5----数组函数

数组函数:
一.判断:
1.every()
判断数组中是否所有元素都符合要求
var bool=arr.every( function (elem,i,arr) {
return 判断条件
} )
原理:
1.every中自带for循环,自动遍历.前数组中,每个元素
2.每遍历一个元素,就自动调用一次回调函数
3.每次调用回调函数时,都自动传入三个值
如果当前元素经过回调函数判断后,返回false,则整个every不再继续向后循环,返回false,表示当前数组不是所有元素都符合要求

	var arr=[1,2,3,4,5];
	var result=arr.every(function(elem,i,arr){
		return elem%2=0;
	})
	console.log(result);//false
2.some()
	专门判断数组中是否包含符合要求的元素,只有一个符合要求,也都返回true
		var bool=arr.some( function ( elem, i, arr ) {
				return 判断条件
		})
	var arr=[1,3,5,7,8];
	var result=arr.some(function(elem,i,arr){
		return elem%2=0;
	})
	console.log(result);//true

二、遍历
1.forEach()
遍历数组中每个元素值,执行相同的操作
遍历数组中每个元素值,都可用forEach()配合箭头函数简写
arr.forEach( function (elem,i,arr) {…} ) 不需要return返回值
arr,forEach( elem => {…} )
2.map()
依次取出原函数中每个元素值,执行相同操作后,放入新数组中返回,原数组中报纸不变
只要希望保护原数组中的内容不被再更改,而是返回一个新数组副本给别人去使用都用map()
回调函数需要返回当前元素值加工后的新值,整个map也会返回一个新数组return
三、过滤
1.filter()
仅复制出原数组中符合条件的元素值,放入新数组中返回
如果先只获得数组中符合条件的元素,都用过滤
强调:
回调函数要return,并判断结果,整个filter也会返回一个新数组
filter是复制出原数组中符合条件的元素,放入新数组中,原数组中元素不会减少,保持不变

	var arr=[1,2,3,4,5];
	var arr2=filter(function(elem,i,arr){
		return elem%2==0;
	})
	console.log(arr2);

四、汇总
1.reduce()
对原数组中每个元素值进行统计,最终得出一个统计结果
var 结果=arr.reduce( function (box,elem,i,arr) {
return box+elem;
},起始值);
reduce 第一步是在内部创建一个变量,来保存reduce第二个实参值指定的初始值
reduce 中自带for循环,自动遍历.前数组中每个元素
强调:
回调函数形参列表开头多一个临时开关汇总值参数
回调函数每次必须返回新的临时汇总值给reduce
reduce返回最终的汇总值

		var arr=[1,2,3,4,5];
		var total=arr.reduce(function(box,elem,i,arr){
			return box+elem;
		},0) //从0开始累加
		console.log(total);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值