Nastavení a snížení čítače
důležitost: 5
Upravte kód funkce vytvořČítač() tak, aby tento čítač uměl také snížit a nastavit svou hodnotu:
čítač()by měl vracet další číslo (jako dříve).čítač.nastav(hodnota)by měl nastavit čítač na hodnotuhodnota.čítač.sniž()by měl snížit čítač o 1.
Úplný příklad použití uvidíte na kódu z pískoviště.
P.S. K uchovávání aktuálního počtu můžete využívat buď uzávěr, nebo vlastnost funkce. Nebo napsat obě varianty.
Řešení využívá počet v lokální proměnné, ale přidané metody jsou vepsány přímo do funkce čítač. Sdílejí stejné vnější lexikální prostředí a mohou také přistupovat k aktuální hodnotě proměnné počet.
function vytvořČítač() {
let počet = 0;
function čítač() {
return počet++;
}
čítač.nastav = hodnota => počet = hodnota;
čítač.sniž = () => počet--;
return čítač;
}