OpakovánÃ, dokud na vstupu nebude ÄÃslo
VytvoÅte funkci naÄtiÄÃslo, která se bude ptát na ÄÃslo tak dlouho, až návÅ¡tÄvnÃk zadá platnou ÄÃselnou hodnotu.
Výslednou hodnotu funkce musà vrátit jako ÄÃslo.
NávÅ¡tÄvnÃk může tento proces ukonÄit i zadánÃm prázdného Åádku nebo stisknutÃm âStornoâ. V takovém pÅÃpadÄ by funkce mÄla vrátit null.
function naÄtiÄÃslo() {
let ÄÃslo;
do {
ÄÃslo = prompt("Zadejte ÄÃslo, prosÃm:", 0);
} while ( !isFinite(ÄÃslo) );
if (ÄÃslo === null || ÄÃslo === '') return null;
return +ÄÃslo;
}
alert(`NaÄteno: ${naÄtiÄÃslo()}`);
ÅeÅ¡enà je trochu složitÄjÅ¡Ã, než by mohlo být, protože si musÃme poradit s null/prázdnými Åádky.
Ve skuteÄnosti tedy pÅijÃmáme vstup tak dlouho, dokud to nenà âskuteÄné ÄÃsloâ. Tuto podmÃnku splÅujà i null (storno) a prázdný Åádek, protože v ÄÃselné podobÄ jsou obÄ 0.
Po skonÄenà musÃme zacházet s null a s prázdným Åádkem speciálnÄ (vrátit null), jelikož jejich konverze na ÄÃslo by vrátila 0.