【Js循环】

1 篇文章 0 订阅

JS循环

数组 list:[
{name:1},
{name:2},
{name:3}
],

Es5 forEach循环

参数1 当前遍历的数据 ,参数2 是当前数据的下标 ,参数3当前数组
不支持continue break

  this.list.forEach((e)=>{
              console.log(e.name)
             e.name += 2
        })
  console.log(this.list)//[{name: 3} {name: 4},{name: 5}]

Es6 map循环

参数1 当前遍历的数据 ,参数2 是当前数据的下标 ,参数3当前数组
不支持continue break

this.list.map((e)=>{
             console.log(e.name)
             e.name += 2
        })
console.log(this.list)//[{name: 3} {name: 4},{name: 5}]
let list2=this.list.map((e)=>{
              //如果想原来数组不变这里先赋值给其他变量在return
              //forEach没有这个写法
              return e.name += 2
        })
console.log(this.list)//[{name: 3} {name: 4},{name: 5}]
console.log(list2)//[3,4,5]

Es6 for of循环

.entries()查询下标
let [下标,当前数据]
如果不需要用下标 直接 for (let 当前数据 of 遍历的对象)

for (let [k,i] of this.list.entries()) {
         //i.name +=2  //可以改变this.list自身
         if(i.name==2){
          // return       //方法结束     //0,1
          continue   //跳过本次循环 //0,1  2,3  4  
          // break        //结束循环     //0,1  4
          }
        console.log(k,i.name)
      }
console.log(4)

经典for循环

for(let i=0;i<this.list.length;i++){
          if(this.list[i].name==2){
            // return    //方法结束     //1
            // continue  //跳过本次循环 //1  3  4  
            // break     //结束循环     //1  4
          }
          console.log(this.list[i].name)
        }
 console.log("4")

for in循环

for (let i in this.list) {
         if(this.list[i].name==2){
          // return       //方法结束     //1
           continue   //跳过本次循环     //1  3  4  
          // break        //结束循环     //1  4
          }
        console.log(this.list[i].name)
      }
 console.log("4")      

while循环

let i=0
      while(i< this.list.length ){
         if(this.list[i].name==2){
            // return       //方法结束     //1
            i++; continue   //跳过本次循环 //1  3  4  
            // break        //结束循环     //1  4
          }
          console.log(this.list[i].name)
          i++;
         }
  console.log(4)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值