Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   помогите мне с кодом пожалуйста.я хочу что бы когда i = 5 число больше не росло (https://javascript.ru/forum/misc/72932-pomogite-mne-s-kodom-pozhalujjsta-ya-khochu-chto-kogda-i-%3D-5-chislo-bolshe-ne-roslo.html)

Qwerty556678 07.03.2018 14:51

помогите мне с кодом пожалуйста.я хочу что бы когда i = 5 число больше не росло
 
var i = 0
function hh(){
$(function(){
$("body").html(i)
})
i++
}
var mm = setInterval(hh ,1000)
if(i == 5){
clearInterval(mm)
}

ksa 07.03.2018 15:04

Цитата:

Сообщение от Qwerty556678
я хочу что бы когда i = 5 число больше не росло

Условие нужно вставить внутрь функции...
На твою тему. ;)
https://javascript.ru/forum/offtopic...tml#post479742

MallSerg 07.03.2018 16:04

Твоя проблема в области видимости переменной mm.
Ее область видимости текущая исполняющаяся функция т.к. используется ключевое слово var.
Конструкция setInterval(hh ,1000) запустит функцию hh но это уже будет другой вызов этой функции и у него будут совсем другие переменные и параметры.

т.е.
1. при завершении функции значение переменной mm теряется если не выполняется условие.
2. Выполнение условия никак не влияет на уже работающие пять интервалов которые создают новые вызовы setInterval которые так же создают setInterval в общем за 30 сек экспоненциального роста ресурсы системы закончатся.


Часовой пояс GMT +3, время: 11:17.