JavaScript里面9种数组遍历!
大家好,我在这里总结分享了JavaScript中的闹腾的数组循环家族。
1、大家最常用的for循环,我就不解释了;
for(let i = 0; i < 5 ; i++){ console.log(i) // 结果 0 - 4 }
2、forEach,用法其实和for循环一样;
var arr = [1,2,3,4] arr.forEach(e =>{ console.log(e) // 结果1 -4 })
进入下面两个循环之前,先教大家一个口诀,删filter改map
3、filter,删除不符合条件的参数;必须有返回,结果只能是boolean类型,
是true就删除,false就留下;
var arr = [1,2,3,4] let newarr = arr.filter(e =>{ return e != 2 // 判断e(arr) 不是2的才会输出 }) console.log(newarr) // 1,3,4
4、map,只修改数组里面的值,不删除参数;
var arr = [1,2,3,4] let newarr = arr.map(e =>{ if(e == 2){ // 如果e(arr)里面的值是2,就进来执行,变成'二' return '二' } return e; }) console.log(newarr) // [1, "二", 3, 4]
5、some,有一个符合条件就返回true,否则就返回false;
var arr = [1,2,3,4] var newarr = arr.some(e =>{ return e < 2 }) console.log(newarr) // e(arr),里面有参数小于2的,所有返回true;
6、every,l所有条件都符合才返回true,否则返回false;
var arr = [1,2,3,4] var newarr = arr.every(e =>{ return e > 0 }) console.log(newarr) // e(arr),里面所有参数都大于0,所以返回true;
7、reduce,可用作快速求和,求阶乘,从左往右;
var arr = [1,2,3,4] var newarr = arr.reduce((e,v) =>{ return e += v }) console.log(newarr) // 10
8、reduceRight,从右往左;........
var arr = [1,2,3,4] var newarr = arr.reduceRight((e,v) =>{ return e += v }) console.log(newarr) // 10
9、for or
const arr = ['mini', 'mani', 'mo']; for (let val of arr) { console.log(val); // 数组值:mini mani mo } for (let index of arr.keys()) { console.log(index);// 数组x下标 } for (let item of arr.entries()) { console.log(item); // 数组下标和值 }
如果喜欢您,大家可以关注下“前端伪大叔”公众号,将会定期为您推送前端的知识点!谢谢!