1. 程式人生 > 實用技巧 >JS中forEach跳出本次迴圈和終止迴圈

JS中forEach跳出本次迴圈和終止迴圈

1、forEach跳出本次迴圈

可使用return語句跳出本次迴圈,執行下一次迴圈

var arr = [1,2,3,4,5,6]
arr.forEach((item) => {
	if (item === 3) {
		return
	}
    console.log(item)
})

將輸出 1 2 4 5 6,3不會輸出

2、forEach終止迴圈

forEach無法通過正常流程(如break)終止迴圈,但可通過丟擲異常的方式實現終止迴圈

var arr = [1,2,3,4,5,6]
try{
  arr.forEach((item) => {
  	  if (item === 3) {
  		  throw new Error('End Loop')
  	  }
      console.log(item)
  })
} catch (e) {
    if(e.message === 'End Loop') throw e
}

將只輸出 1 2

注意:在catch語句塊中加了if(e.message === 'End Loop') throw e這句程式碼會在控制檯報一個錯誤,這個錯誤是try語句塊中丟擲的,如下:

new_file.html:24 Uncaught Error: End Loopat new_file.html:24at Array.forEach ()at new_file.html:22

如果不想看到這個報錯,將if(e.message === 'End Loop') throw e這一句刪除就行

原文連結:https://blog.csdn.net/daoxiaofei/article/details/108690589