zpět k lekci

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 hodnotu hodnota.
  • čí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.

Otevřít pískoviště s testy.

Ř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č;
}

Otevřít řešení s testy na pískovišti.