Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Простой, но бесконечный цикл. Как разорвать? (https://javascript.ru/forum/events/42482-prostojj-no-beskonechnyjj-cikl-kak-razorvat.html)

cccp.world 28.10.2013 20:04

Простой, но бесконечный цикл. Как разорвать?
 
function birthDay() {
	var i = 0;
	while (i <= 31) {
		function day(i) {
			i ++;
            return i;
		}
	}
}
birthDay();


Поясните что, я делаю не так? Почему цикл уходит в бесконечность?

рони 28.10.2013 20:17

cccp.world,
функция day никогда незапускается поэтому i всегда меньше 31

рони 28.10.2013 20:35

:-?
function birthDay() {
	var i = 0;
	while (i <= 31) {
		(function day() {
			i++;
 		})()
	}
   return i;
}
   alert(birthDay());

cccp.world 28.10.2013 20:53

(function day() {
     i++;
})()


Пожайлуста расскажите зачем обернута функция в круглые скобки и зачем на конце ()?

рони 28.10.2013 21:05

cccp.world,
(function day() {

i++;

})() == day()
Функция с вызовом «на месте»

cccp.world 29.10.2013 16:35

Благодарю.


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