来自嵌套for循环的TypeScript中断开关/大小写

时间:2018-09-12 02:48:21

标签: javascript typescript

从本质上讲,我正在寻找this question的反义词:如果我在switch / case语句中嵌套了一个for循环,是否有办法在情况下break?简单的例子:

switch (prompt('Left or right?')) {
  case 'left':
    for (let i = 0; i < 10; ++i) {
      if (/* some condition */) {
        break case 'left' // this isn't valid
      }
    }
    break
  // ...
}

谢谢

1 个答案:

答案 0 :(得分:3)

这是为标签创建的。将标签应用于您想突破并打破命名块的地方。在这种情况下,命名块是switch语句:

direction: switch (prompt('Left or right?')) {
  case 'left':
    for (var i = 0; i < 10; ++i) {
      if (i==3) {
        break direction
      }
    }
    console.log('should not get here (remove "direction" above to test)')
    break
  default:
    break
}