为了账号安全,请及时绑定邮箱和手机立即绑定

为什么for of方法不能遍历修改原数组?

为什么for of方法不能遍历修改原数组?

叮当猫咪 2018-08-10 12:02:13
按照各方法的定义,以下迭代方法应该都能对数组中的每一项运行传入函数,但是://对数组进行迭代//for方法let b=[1,2,3]for(let i=0,len=b.length;i<len;i++){     b[i]*=2     }console.log(b) //[2,4,6]//forEach方法... b.forEach(function(i,j){     b[j]*=2     }) ...//[2,4,6]//for in方法... let c=Object.keys(b)for(let i in c){     b[i]*=2     } ...//[2,4,6]//for of方法... for(let i of b){     i*=2     } ...//[1,2,3]可以看到for of不会修改原数组并返回,参考诸多文档发现都只提到遍历添加事件,目前只能在for of上使用额外方法才能实现数组遍历修改.最后希望各位答主能给出实现原理角度的提示分析,谢谢!
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 2164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信