Label statement

PHOTO EMBED

Thu Apr 08 2021 07:49:34 GMT+0000 (Coordinated Universal Time)

Saved by @AngusYang #javascript

loop1: for (let i = 0; i < 4; i++) {
  loop2: for (let j = 0; j < 3; j++) {
    console.log('before')
    if (i === 1) {
      // when i equal to 1, jump out the loop2 immediately
      continue loop1
      // or can do break loop1
    }
    console.log(`i=${i}, j=${j}`)
  }
}

foo: {
  console.log('face');
  break foo;
  console.log('this will not be executed');
}
console.log('swap');

// this will log:

// "face"
// "swap" 
content_copyCOPY

for 循环中,利用 label 可以跳出循环嵌套; label 还可以用作 scope,通过 break 结束 scope。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label