for in ,for of和forEach的区别

for in
     1循环遍历的值都是数据结构的键值,它可以循环数组也能循环对象.,
           2.它遍历数元素的时候,还会遍历其他新增的属性,
    3.在有些情况下,还会以随机顺序遍历数组
    4.所以他最好用来遍历对象,


for of 
    1.可以避免for in循环中的陷阱
    2.不同于forEach,它可以使用return,break,continue来终止循环
    3.它不仅仅支持数组的遍历,同时也适用于很多类似数组的对象
    4.还可遍历字符串
    5.并不能处理原有的而原生对象
    6.他不能遍历一个普通的对象,只有在对象中部署了 Symbol.iterator 属性, 才具有 iterator接                   口可以使用 for of循环
    7.如果不部署Symbol.iterator 属性,想遍历普通对象,需要联合Object.keys()来使用


forEach
    1.他不能使用return,break,continue来终止循环,
    2.在回调函数内不管传入任何形式 的参数,都会返回undifind
    3.在回调函数内部有三个参数,item,index,arr分别代表,当前项,当前项的下标,数组本身.
    4.它会对数组的每一个元素执行一次提供的函数,不改变原数组,没有返回值undifind
      代码展示
    let arr=[1,1,2,3,6,5,4]
    arr.forEach((item,index,arr)=>{
    console.log(item)
    })

  • 11
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ling…

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值