数组使用forEach与map 个人浅谈区别

经过测试主要两者主要区别在于数组使用forEach方法后返回undefined,而使用map方法后返回一个新的数组;

具体操作如下:首先定义一个数组,分别调用forEach方法与map方法:

<script>
    var arr = [1,2,3,4,5,6];
    console.log(arr.forEach((item)=>{}))
    console.log(arr.map((item)=>{}))
</script>

执行结果如下:

n由此可见两者的直观上的差别;

在使用方面:

借助map方法返回新的数组这一特性我们可以对数组的操作实现链式写法,demo如下:

<script>
    var arr = [1,2,3,4,5,6];
    // 对数组的每一个原生+=1,并截取下标大于2的两个元素
    var data = arr.map((item)=>{return item+1}).splice(2,2);
    console.log(data)
</script>

执行结果如下:

ps:因个人主要接触react项目比较多,在开发过程中有遇到使用map处理数据时,未在回调函数中return,导致控制台提示发生,改用forEach后解决此现象,所以个人开发过程中多使用forEach做单纯的数据处理,使用map在回调中渲染dom;

猜你喜欢

转载自blog.csdn.net/Beamon__/article/details/81464058