[JS] jak opuścić rekurencję?

0

Witam, mam taką funkcję:

function pow()
{
var imie = prompt('Podaj swoje imie', '');

if (imie == null)
 {
  alert('Musisz podać imię');
  pow();
 }
 
alert('Gratulacje '+imie+'. Mozesz zaczac prace');
status='Witaj '+imie;
}

I teraz jak powiedzmy 2 razy kliknę ANULUJ(w monice skryptu), to wszystko działa ok, dopóki nie wpiszę np: "Juhas" i OK.
Wtedy dzieje się taka rzecz.
Pojawia się alert z treścią: Gratulacje Juhas. blablabla
Następnie pojawia się alert: Gratulacje null......
I jeszcze raz.

Więc moje pytanie brzmi. Jak zrobić, że gdy użytkownik po kilku próbach wciśnięcia ANULUJ w monicie skryptu, wpisze imie i naciśnie OK, żeby opuściło pozostałe "niedokończone" funkcje?

0

Musisz chyba zakończyć działąnie funkcji, np. przez return 0;
Nie pamiętam jak to jest w JS, ale spróbuj

if (imie == null)
{
alert('Musisz podać imię');
pow();
return 0;
}

0

ee - po co te kombinacje? a nie prościej tak?

function pow()
{while(1)
 {imie = prompt('Podaj swoje imie', '');
  if (!imie) alert('Musisz podać imię');
  else break;
 }
 alert('Gratulacje '+imie+'. Mozesz zaczac prace');
 status='Witaj '+imie;
}

albo jeszcze krócej:

function pow()
{while(!(imie = prompt('Podaj swoje imie', '')))
  alert('Musisz podać imię');

 alert('Gratulacje '+imie+'. Mozesz zaczac prace');
 status='Witaj '+imie;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1