Zkrácený zápis
V cyklech budete proměnné měnit neustále, nejčastěji tak, že k nim něco přičtete nebo od nich něco odečtete. Psát pořád dokola cislo = cislo + 1 je zdlouhavé, a proto má JavaScript kratší zápisy:
skore += 5;znamená totéž coskore = skore + 5;skore -= 5;znamená totéž coskore = skore - 5;skore++;znamená totéž coskore = skore + 1;skore--;znamená totéž coskore = skore - 1;
Zápis += si můžete přečíst jako „přičíst k“: skore += 5 znamená „k proměnné skore přičíst 5“. Operátory ++ a -- slouží pro vůbec nejčastější změnu: o jedna víc, nebo o jedna méně.
let skore = 10;
skore += 5;
console.log(skore);
skore -= 3;
console.log(skore);
skore++;
console.log(skore);
skore--;
console.log(skore);Vypíše:
15
12
13
12Zápis += funguje i s textem. Přidá text na konec textu, který už v proměnné je:
let zprava = "Ahoj";
zprava += ", světe";
zprava += "!";
console.log(zprava);Ahoj, světe!Díky ++ se cyklus z minulého cvičení trochu zkrátí. Takto ho uvidíte zapsaný nejčastěji:
let cislo = 1;
while (cislo <= 3) {
console.log(cislo);
cislo++;
}1
2
3Dvě typické chyby:
skore + 5;samo o sobě nic nedělá. Výsledek spočítá, ale nikam ho neuloží, takže seskorenezmění. Je potřeba napsatskore += 5;.skore =+ 5;s prohozenými znaky chybu nezpůsobí. JavaScript to přečte jakoskore = +5;a doskoreprostě uloží5. Rovnítko je vždy až druhé:+=,-=.
Všechny tyto zkratky proměnnou mění, a proto fungují jen s let. S const skončí chybou TypeError: Assignment to constant variable.
Jak psát:
Pokyny
Cyklus v editoru vypisuje 0, 10, 20 a tak dále až do 50. Nahraďte cislo = cislo + 10; kratším zápisem s +=. Výstup zůstane stejný.
Pod cyklem vytvořte proměnnou odpocet s hodnotou 3 a napište druhý cyklus while: dokud je odpocet větší než 0, vypište odpocet a potom ho pomocí -- snižte o jedna.
Za druhý cyklus přidejte výpis textu Start!. Výstup pak bude končit čtyřmi řádky: 3, 2, 1 a Start!.
Začněte programovat zdarma
2/12