- break
- Try it
- Syntax
- Description
- Examples
- break in while loop
- break in switch statements
- break in labeled blocks
- Unsyntactic break statements
- Specifications
- Browser compatibility
- See also
- Found a content problem with this page?
- MDN
- Support
- Our communities
- Developers
- Остановить выполнение скрипта | JavaScript
- Прервать работу скрипта или в чём разница между return; return false; return true;
- Как использовать return, когда функция вызывает саму себя (рекурсия)
- Возврат массива из функции
- return
- Интерактивный пример
- Синтаксис
- Описание
- Автоматическая расстановка точек с запятыми
- Примеры
- Прерывание функции
- Возвращение функции
- Спецификации
- Совместимость с браузерами
- Смотрите также
- Found a content problem with this page?
- MDN
- Support
- Our communities
- Developers
- Как остановить выполнение функции js
break
The break statement terminates the current loop or switch statement and transfers program control to the statement following the terminated statement. It can also be used to jump past a labeled statement when used within that labeled statement.
Try it
Syntax
Identifier associated with the label of the statement to break to. If the break statement is not nested within a loop or switch , then the label identifier is required.
Description
When break; is encountered, the program breaks out of the innermost switch or looping statement and continues executing the next statement after that.
When break label; is encountered, the program breaks out of the statement labeled with label and continues executing the next statement after that. The break statement needs to be nested within the referenced label. The labeled statement can be any statement (commonly a block statement); it does not have to be another loop statement.
A break statement, with or without a following label, cannot be used at the top level of a script, module, function’s body, or static initialization block, even when the function or class is further contained within a loop.
Examples
break in while loop
The following function has a break statement that terminates the while loop when i is 3, and then returns the value 3 * x .
function testBreak(x) let i = 0; while (i 6) if (i === 3) break; > i += 1; > return i * x; >
break in switch statements
The following code has a break statement that terminates the switch statement when a case is matched and the corresponding code has run.
const food = "sushi"; switch (food) case "sushi": console.log("Sushi is originally from Japan."); break; case "pizza": console.log("Pizza is originally from Italy."); break; default: console.log("I have never heard of that dish."); break; >
break in labeled blocks
The following code uses break statements with labeled blocks. By using break outerBlock , control is transferred to the end of the block statement marked as outerBlock .
outerBlock: innerBlock: console.log("1"); break outerBlock; // breaks out of both innerBlock and outerBlock console.log(":-("); // skipped > console.log("2"); // skipped >
Unsyntactic break statements
A break statement must be nested within any label it references. The following code also uses break statements with labeled blocks, but generates a syntax error because its break statement references block2 but it’s not nested within block2 .
block1: console.log("1"); break block2; // SyntaxError: label not found > block2: console.log("2"); >
Syntax errors are also generated in the following code examples which use break statements within functions that are nested within a loop, or labeled block that the break statements are intended to break out of.
function testBreak(x) let i = 0; while (i 6) if (i === 3) (() => break; >)(); > i += 1; > return i * x; > testBreak(1); // SyntaxError: Illegal break statement
block1: console.log("1"); (() => break block1; // SyntaxError: Undefined label 'block1' >)(); >
Specifications
Browser compatibility
BCD tables only load in the browser
See also
Found a content problem with this page?
This page was last modified on Mar 31, 2023 by MDN contributors.
Your blueprint for a better internet.
MDN
Support
Our communities
Developers
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
Остановить выполнение скрипта | JavaScript
Прервать работу скрипта или в чём разница между return; return false; return true;
Если не нужно знать достигла ли функция положительного исхода, то достаточно указать return без значения:
Если дальнейшее выполнение скрипта должно прерываться (или развиваться по другому пути) при достижении положительного исхода рассматриваемой функции, то return присваивается значение, чаще false или true :
Как использовать return, когда функция вызывает саму себя (рекурсия)
Возврат массива из функции
return
Оператор return завершает выполнение текущей функции и возвращает её значение.
Интерактивный пример
Синтаксис
Выражение, значение которого будет возвращено. Если не указано, вместо него возвращается undefined .
Описание
При вызове оператора return в функции её выполнение прекращается. Указанное значение возвращается в место вызова функции. Например, приведённая ниже функция возвращает возведённое в квадрат значение своего аргумента, x (где x – это число):
function square(x) return x * x; > var demo = square(3); // значение demo будет равняться 9
Если возвращаемое значение не указано, вместо него возвращается undefined .
Следующие выражения всегда прерывают выполнение функции:
return; return true; return false; return x; return x + y / 3;
Автоматическая расстановка точек с запятыми
На выражение return влияет автоматическая расстановка точек с запятыми (ASI). Разрыв строки не допускается между ключевым словом return и выражением.
В консоли появится предупреждение «unreachable code after return statement».
Примечание: Начиная с Gecko 40, предупреждение в консоли появляется, если обнаружен недостижимый код после return .
Для того, чтобы избежать данной проблемы (предотвратить ASI), можно использовать скобки:
Примеры
Прерывание функции
Функция немедленно останавливается в точке, где вызывается return .
function counter() for (var count = 1; ; count++) // бесконечный цикл console.log(count + "A"); // до 5 if (count === 5) return; > console.log(count + "B"); // до 4 > console.log(count + "C"); // никогда не появляется > counter(); // Выводит: // 1A // 1B // 2A // 2B // 3A // 3B // 4A // 4B // 5A
Возвращение функции
function magic(x) return function calc(x) return x * 42 >; > var answer = magic(); answer(1337); // 56154
Спецификации
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
Found a content problem with this page?
This page was last modified on 17 февр. 2023 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
Our communities
Developers
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
Как остановить выполнение функции js
Чтобы остановить выполнение функции, достаточно просто вызвать инстркуцию return . Например:
const func = (num) => // если переданное число равно 2, то останавливаем работу функции if (num === 2) return; > console.log('hello'); >; func(1); // => hello func(2);
В примере выше, если вызвана функция с параметром 2, то срабатывает условие и функция прерывается благодаря return . Также можно вернуть результат из функции:
const func = (num) => // если переданное число равно 2, то останавливаем работу функции if (num === 2) return 'is number 2'; > return 'hello'; >; console.log(func(1)); // => hello console.log(func(2)); // => is number 2