Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   не получается выйти из setInterval, не завершая его (https://javascript.ru/forum/misc/54266-ne-poluchaetsya-vyjjti-iz-setinterval-ne-zavershaya-ego.html)

BRIGSS 11.03.2015 12:13

не получается выйти из setInterval, не завершая его
 
не получается выйти из setInterval, не завершая его выполнение.
как вот в таком примере выйти из setInterval
, чтобы он заканчивался на i==2, а не был бесконечным?


i=0;
					function ff(){
						var g=setInterval(
						function(){
					alert(7);
				i++;
				if(i==2){clearInterval(g) ;return;
				}
				alert(i++);
					},1000
				)
					}
					ff();

BRIGSS 11.03.2015 12:19

..

Царь Леонид 11.03.2015 12:29

А почему не setTimeout?

arcmag 11.03.2015 16:39

function ff(){
var i=0,g=setInterval(
	function(){
		i++;
		if(i==2) clearInterval(g);
		alert(i);
	},1000)
}
ff();

greenbeaver 11.03.2015 17:58

Цитата:

Сообщение от arcmag (Сообщение 360745)
function ff(){
var i=0,g=setInterval(
	function(){
		i++;
		if(i==2) clearInterval(g);
		alert(i);
	},1000)
}
ff();

так i не будет в глобальной области видимости, нужно доделать return i;

arcmag 11.03.2015 18:12

Цитата:

Сообщение от greenbeaver (Сообщение 360769)
так i не будет в глобальной области видимости, нужно доделать return i;

Когда я тестировал все прекрасно работало, счетчик доходил до 2 и останавливался.
Да и зачем i нужно быть в глобальной видимости?

ruslan_mart 11.03.2015 18:36

greenbeaver, callback в setInterval не должен ничего никуда возвращать.


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