Spec-Zone.ru › JavaScript

SyntaxError: continue must be inside loop

Исключение JavaScript "continue must be inside loop" возникает, когда инструкция continue находится не внутри оператора цикла.

Сообщение

SyntaxError: Illegal continue statement: no surrounding iteration statement (V8-based)
SyntaxError: Illegal continue statement: 'label' does not denote an iteration statement (V8-based)
SyntaxError: continue must be inside loop (Firefox)
SyntaxError: 'continue' is only valid inside a loop statement. (Safari)
SyntaxError: Cannot continue to the label 'label' as it is not targeting a loop. (Safari)

Тип ошибки

SyntaxError.

Что пошло не так?

Инструкции continue могут использоваться для продолжения цикла, и их использование где-либо еще является синтаксической ошибкой. В качестве альтернативы, вы можете предоставить метку для инструкции continue, чтобы продолжить любой цикл с этой меткой — однако, если метка не ссылается на содержащий ее оператор, будет выброшена другая ошибка SyntaxError: label not found, а если метка ссылается на оператор, который не является циклом, синтаксическая ошибка все равно будет выброшена.

Примеры

Использование continue в колбэках

Если вы хотите перейти к следующей итерации в цикле forEach(), используйте return вместо этого, или преобразуйте его в цикл for...of.

array.forEach((value) => {
  if (value === 5) {
    continue; // SyntaxError: continue must be inside loop
  }
  // do something with value
});
array.forEach((value) => {
  if (value === 5) {
    return;
  }
  // do something with value
});
for (const value of array) {
  if (value === 5) {
    continue;
  }
  // do something with value
}

Смотрите также

  • continue

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Bad_continue

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API