关于js中map和forEach的使用

在js的使用中,我们肯定少不了使用循环.但js中有二十多中循环,而我们通常使用for循环或者while循环.

for循环呢,功能很强,但是确实麻烦,今天给大伙说说同属于循环的map,在一些特定情况下,map还是非常方便且快捷的.

    const arr=[1,2,3,4,5,6,7,8,9,10]
    const A =arr.map(value => value*3)
    console.log(A)//[3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

map 遍历数组每一个元素并调用回调,并返回一个包含所有结果的数组。

简单来说就是在原有数据的基础上执行函数,并将执行函数后的数据返回,形成一个新的数组.

还有一种就是forEach循环,他和map不同之处呢,是不需要声明一个新的数组来接收返回值,forEach直接作用于数组本身,在原数组上进行函数操作

也是在一些特定情况下十分的方便.在此就先不做演示了

说一个map和foreach的小故事,是我亲身经历的:

在学校学习前端时,遇到一个管理员系统,登录后需要清除掉登录密码,这里老师带着我们一起打的是使用的map,具体长这样:

const students=JSON.parse(data)
                  
                    students.map(value=>delete value.password)

我当时听的时候有点似懂非懂但看这代码大概说得过去,也没什么疑问,在我做课后复习的时候,到这里这个map我就感觉不太对劲了——为什么map这种会生成一个新数组的函数,可以不声明一个量来接受它并且还运行的没问题.

我也请教了老师,老师说此处forEach更好一些,可我还是对这个map有疑问,因为map在没有任何数组来接受它的情况下仍然改变了原数组,实现的效果和forEach一样.

有大佬清醒还请赐教!!

 

posted @   不知名代码小白  阅读(955)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示