Как остановить выполнение скрипта javascript
Перейти к содержимому

Как остановить выполнение скрипта javascript

  • автор:

Остановить выполнение скрипта | JavaScript

Прервать работу скрипта или в чём разница между return; return false; return true;

Если не нужно знать достигла ли функция положительного исхода, то достаточно указать return без значения:

   

Если дальнейшее выполнение скрипта должно прерываться (или развиваться по другому пути) при достижении положительного исхода рассматриваемой функции, то return присваивается значение, чаще false или true :

   

Как использовать return, когда функция вызывает саму себя (рекурсия)

  

Возврат массива из функции

  

Остановить выполнение скрипта

Author24 — интернет-сервис помощи студентам

у меня простое условие, если есть кнопка — нажать, а если нету — перезагружать страницу каждые 10 секунд, пока не появится. Но когда нажимается кнопка, это условие IF перестаёт выполняется,(так как при нажатии — кнопка пропадает) и страница перезагружается, что нужно дописать в этой строке?

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Загрузка и выполнение скрипта из другого скрипта
Здравствуйте. У меня динамически скрипт формирует ссылку на которой лежит другой скрипт. Задача.

Promise остановить выполнение
Добрый день. Подскажите, как остановить выполнения промиса? ConfirmCodeFetch возвращает Promis Я.

Автоматическое выполнение скрипта
Выполняя задачу из этой темы https://www.cyberforum.ru/javascript-beginners/thread2790936.html.

Выполнение скрипта после Ajax
Приветствую. У меня есть меню и по клику на любой пункт идет подгрузка контента через Ajax, далее .

3318 / 1217 / 413
Регистрация: 24.07.2016
Сообщений: 1,818

ЦитатаСообщение от NakerIT Посмотреть сообщение

что нужно дописать у код, чтобы после клика — завершило скрипт?

Очевидно нужно остановить перезагрузку и «пропадание» кнопки. Но здесь ничего не понятно. Давайте остальной код.

Регистрация: 12.01.2022
Сообщений: 2
klyapa, вот мой код:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
setInterval(function(){ if(document.getElementById("getKeyButton")) { document.getElementById("getKeyButton").click(); } else { location.reload(); } }, 10000);

3318 / 1217 / 413
Регистрация: 24.07.2016
Сообщений: 1,818

Лучший ответ

Сообщение было отмечено NakerIT как решение

Решение

1 2 3 4 5 6 7 8
let idInt = setInterval(function() { if(document.getElementById("getKeyButton")) { document.getElementById("getKeyButton").click(); clearInterval(idInt); } else { location.reload(); } }, 10000);

Добавлено через 4 минуты
Но ещё видимо есть обработчик клика по кнопке, в котором тоже нужно смотреть, что он делает. С какого перепуга кнопки на странице нет, а потом она внезапно появляется, после какой-то перезагрузки?

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

выполнение скрипта с шагом в 1 секунду
подскажите как мне вызывать функцию каждую секунду и при этом туда задавать шаг? for(step=1;.

Как сделать выполнение скрипта асинхронно в нескольких блоках?
Добрый день! Никак не получается найти решение для правильной работы скрипта. Имеется несколько.

Как остановить цикличное выполнение Javascript скрипта?
Добрый день. Подскажите пожалуйста какое-нибудь решение проблемы.. Реализована такая схема.

Как остановить выполнение скрипта? как «exit» в php?
Всем добрый вечер. В php есть exit который останавливает все, есть ли такое в javascript? Для.

Остановить выполнение функции и перезапустить ее выполнение по новой
Всем доброго вечера. Друзья, подскажите пожалуйста — есть код, который после загрузки ДОМ дерева.

Остановить выполнение функции
Приветствую, ребята. Есть кнопка в форме, подтверждающая отправку. При нажатии, если выполнилось.

Или воспользуйтесь поиском по форуму:

break

Оператор break прерывает выполнение текущего цикла, оператора множественного выбора switch или блочного выражения с меткой. Выполнение кода продолжается с конструкции, следующей за прерванной.

Интерактивный пример

Синтаксис

break [label]; 

label Необязательный

Идентификатор связанной метки. Если прерываемое выражение не цикл или switch , указание метки обязательно.

Описание

С помощью оператора break можно прервать выполнение блочного выражения с меткой. В таком случае break должен находиться внутри блока кода с указанной меткой. Само блочное выражение может быть любым, а не только циклом.

Использование break , с меткой или без, невозможно внутри функции, которая вложена в прерываемые цикл, конструкцию switch или блочное выражение с меткой.

Примеры

break в цикле while

Следующая функция использует оператор break для выхода из цикла while , когда i станет равно 3, и возвращает значение 3 * x .

function testBreak(x)  var i = 0; while (i  6)  if (i == 3)  break; > i += 1; > return i * x; > 

break в конструкции switch

В примере оператор break прервёт выполнение switch сразу после выполнения кода в совпавшем case .

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 в блочном выражении с указанной меткой

В примере используется оператор break с меткой. В таком случае break обязательно должен быть вложен в блок кода с той же меткой. Обратите внимание, что inner_block вложен в outer_block .

outer_block:  inner_block:  console.log("1"); break outer_block; // break прервёт выполнение кода как в inner_block, так и в outer_block console.log(":-("); // не будет выполнено > console.log("2"); // не будет выполнено > 

break вне блочного выражения с указанной меткой

В примере также используется break с меткой, но код будет выполнен с ошибкой SyntaxError , потому что break находится в блоке с меткой block_1 , а прерывается выполнение блока кода с меткой block_2 . Ещё раз, в таком случае break обязательно должен быть вложен в блок кода с меткой, выполнение которого требуется прервать.

block_1:  console.log('1'); break block_2; // SyntaxError: label not found > block_2:  console.log('2'); > 

break внутри функций

Код в примерах также будет выполнен с ошибкой SyntaxError , потому что в обоих случаях break находится в теле функции, вложенной в прерываемый цикл или прерываемое блочное выражение с меткой.

function testBreak(x)  var i = 0; while (i  6)  if (i == 3)  (function()  break; >)(); > i += 1; > return i * x; > testBreak(1); // SyntaxError: Illegal break statement 
block_1:  console.log('1'); ( function()  break block_1; // SyntaxError: Undefined label 'block_1' >)(); > 

Спецификации

Specification
ECMAScript Language Specification
# sec-break-statement

Совместимость с браузерами

BCD tables only load in the browser

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

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

This page was last modified on 7 авг. 2023 г. by MDN contributors.

Your blueprint for a better internet.

MDN

Support

  • Product help
  • Report an issue

Our communities

Developers

  • Web Technologies
  • Learn Web Development
  • MDN Plus
  • Hacks Blog
  • Website Privacy Notice
  • Cookies
  • Legal
  • Community Participation Guidelines

Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license.

Как остановить выполнение скрипта js

Для остановки выполнения JS кода на странице, можно сделать так:

  • Открыть DevTools и перейти на вкладку Sources;
  • Выбрать файл с логикой по которому будет вестись работа и найти необходимую строчку кода где необходимо поставить брейкпоинт;
  • Слева от строки находится столбец с ее номером. Если на него нажать, то появится синий значок — это и есть брейкпоинт того, чтобы использовать точку останова в DevTools;

add_breakpoint

Там же, кстати, ими можно и управлять:

  • Чтобы отключить брейкпоинт, достаточно убрать галочку рядом с ним
  • Удалить брейкпоинт можно с помощью нажатия на правую кнопку мыши около точки останова

manage_breakpoint

Еще бывают точки останова в коде, которые можно самостоятельно поставить в коде. Для создания такого брейкпоинта нужно просто вызвать debugger в коде. Этот подход эквивалентен предыдущему способу, через DevTools, только без использования визуального интерфейса.

console.log('a'); console.log('b'); debugger; console.log('c'); 

Еще есть вариант использовать throw. Инструкция throw позволяет генерировать исключения, определяемые пользователем. При этом выполнение текущей функции будет остановлено (инструкции после throw не будут выполнены), и управление будет передано в первый блок catch в стеке вызовов. Если catch блоков среди вызванных функций нет, выполнение программы будет остановлено.

const sayMeow(cat) =>  if (!cat.meow)  throw new Error('это не кот и он не умеет говорить мяу!'); > cat.meow() > 

Ну и наконец можно использовать точки останова в DOM, если вы собираетесь приостановить код, который изменяет узел DOM или его дочерние элементы. Это делается следующим образом:

  • Перейдите во вкладку Elements
  • Найдите элемент, на который нужно установить брейкпоинт
  • Нажмите на элемент правой кнопкой мыши
  • Наведите мышь на Break on, а затем выберите Subtree modifications, Attribute modifications или Node removal в зависимости от того, что вы хотите сделать. Ниже расскажем, что это такое и как работает.

dom_breakpoint

Более подробно про точки останова можно прочитать здесь, в интересной статье, на Хекслете.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *