跳出迴圈的方法 continue, break 與 return


Posted by backas36 on 2021-11-30

假設我們現在有個迴圈可以跑 0~4 ,共五次,我們在第 3 次 (i=2)的時候想要跳出迴圈該怎麼做呢?

continue

continue 簡單來說就是跳出『此次』迴圈,接著還會繼續執行迴圈,直到迴圈結束唷!

for (let i = 0; i < 5; i++) {
  if (i === 2) {
    console.log('continue in loop')
    continue
  }
  console.log(i)
}

會印出
0
1
continue in loop
3
4

break

break 跟 continue 就是相反,跳出此次迴圈之後,就一去不復返了。

for (let i = 0; i < 5; i++) {
  if (i === 2) {
    console.log('continue in loop')
    continue
  }
  console.log(i)
}

會印出
0
1
break in loop

return

return 也是跟 break 一樣會跳出迴圈,並停止迴圈。

const returnInloop = () => {
  for (let i = 0; i < 5; i++) {
    if (i === 2) return console.log('return in loop')
    console.log(i)
  }
}

returnInloop()

會印出
0
1
retrun in loop

有發現我是用呼叫 function 來執行 function body 裡面的迴圈的嗎? 是的,根據ECMA規範,如果 return
並不是在 function body 裡面,會造成 function 停止執行。

所以假設我們是這樣執行迴圈

for (let i = 0; i < 5; i++) {
  if (i === 2) return console.log('return in loop')
  console.log(i)
}

console.log('here')

會只印出
0
1
return in loop

就不會印出 'here' 了。


#javascript







Related Posts

使用 iSH 讓 Obsidian 在 iOS 設備上同步

使用 iSH 讓 Obsidian 在 iOS 設備上同步

Debounce & Throttle in React - 2

Debounce & Throttle in React - 2

HTTP 協議 / 請求&Cache / 回應&Content-Type

HTTP 協議 / 請求&Cache / 回應&Content-Type


Comments