map循环能否替代forEach

回答:不可以!虽然结果都是一样的,但是使用map当作forEach进行数组遍历不符合语义化,不便于后期的维护。

两者的异同

相同:都可以遍历数组
例如

const arr=[1,2,3,4,5,6]
//通过forEach处理数据
arr.forEach((item,index,data)=>{
    arr[index]=item+1
})
//通过map处理数据
const newArr= arr.map((item,index,data) => {
    arr[index]=item+1
});
console.log(arr);

不同:
forEach方法:
1、用于数据for循环进行遍历。接收三个参数(数据中每个元素,下标,数据),单纯的更改item,不会更改源数据。
2、没有返回值的,返回undefined
map方法:
1、用于映射一个新的数组,不更改源数据。
2、产生一个新数组

你可能感兴趣的:(map循环能否替代forEach)