数组遍历forEach和map应用及区别
forEach
定义和用法
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
注意: forEach() 对于空数组是不会执行回调函数的。
1、利用forEach()遍历数组
forEach()方法用于调用数组每个元素,并将元素传递给回函数。
语法:array.forEach(function(item,index,arr))//item是必须填写,后面两个是选填
var arr=[1,3,5,7,9];
// item是数组的元素,index当前下标/索引,arr数组自身 //这些参数都是系统设定好的了
// arr.forEach(function (item,index,arr) {
// console.log(item,index,arr);
// })
2、forEcah求数组中所有元素的和
// var sum=0;
// arr.forEach(function (item) {
// sum+=item;
// });
// console.log(sum);
3、forEach求数组中所有大于5的元素的数组
// var arr1=[];
// arr.forEach(function (t) { //这里的t是代表元素的意思
// if(t>5){
// arr1.push(t); //添加到一个数组名为arr1,利用的是push,想后添加返回新长度
// }
// });
// console.log(arr1);
4、利用forEach给每个元素添加一个数值然后返回到一个新数组
// var arr1=[];
// arr.forEach(function (item,index,arr) {
不能通过直接赋值改变原数组的内容
item+=5;
// arr1.push(item+5);
// });
5、forEach 不能通过直接赋值改变原数组的内容
6、利用map方法做筛选赋值
7、利用map给每个元素增加数值然后返回
8、forEach和map的区别
- S级
- map会返回回调函数中return 的内容组成数组,这个数组的长度与原数组相同
- 而且按照原数组对应的位置返回内容的
- forEach,只遍历,不返回任何内容
总结:
forEach,可以实现遍历、筛选、求和、对应元素增减数值、