js 數組循環中斷

中間其餘事情沒有寫 崛起 今天看看在js循環數組的時候 break return continue
普通for循環數組

for(var i=0; i<3; i++) {
    console.log(i)  // 正常  012
}
for(var i=0; i<3; i++) {
    if(i === 1) {
        break
    }
    console.log(i)  // 0  break 跳出循環
}
for(var i=0; i<3; i++) {
    if(i === 1) {
        continue
    }
    console.log(i)  // 0 2 continue 跳出本次循環 進行下次循環
}
for(var i=0; i<3; i++) {
    if(i === 1) {
        return 
    }
    console.log(i)  // 報錯
}
複製代碼

for inbash

var arr = [1,2,3]
  for(var i in arr) {
      console.log(i) // 0 1 2  正常
  }
  for(var i in arr) {
    if(i == 1) {
        break
    }
      console.log(i) // 0  跳出本次循環執行循環體後面代碼
  }
  for(var i in arr) {
    if(i == 1) {
        continue
    }
      console.log(i) // 0 2  結束本次循環執行下次循環
  }
  for(var i in arr) {
    if(i == 1) {
        return
    }
      console.log(i) // 報錯
  }
複製代碼

for ofui

var arr = [1,2,3]
  for(var i of arr) {
      console.log(i) // 1 2 3  正常  for of  i值value  不是下標值
  }
   for(var i of arr) {
      if(i === 2) {
          break
      }
      console.log(i) // 1  跳出循環  跟for 相似
  }
  for(var i of arr) {
      if(i === 2) {
          continue
      }
      console.log(i) // 1 3   結束本次循環 跟for 相似
  }
  for(var i of arr) {
      if(i === 2) {
          return
      }
      console.log(i) // 報錯 
  }
複製代碼

forEachspa

var arr = [1,2,3]
 arr.forEach(function(value, index){
     console.log(value) // 1 2 3  正常
 })
 arr.forEach(function(value, index){
     if(index === 1) {
         break
     }
     console.log(value) // 報錯
 })
 arr.forEach(function(value, index){
     if(index === 1) {
         continue
     }
     console.log(value) // 報錯
 })
 arr.forEach(function(value, index){
     if(index === 1) {
         return true
     }
     console.log(value) //  1 3  
 })
複製代碼

map map 跟forEach 同樣可是返回值是數組code

總結:it

  • 有break continue 的 普通for forin forof
  • 沒有break continue map forEach
相關文章
相關標籤/搜索