Řešení úlohy

Co je zde splněno

  • alert() pro úvodní i výstupní zprávy.

  • prompt() pro získání dvou čísel.

  • Number() pro převod textu na číslo.

  • Kontrola platnosti vstupů přes isNaN().

  • Ošetření zrušení dialogu (== null).

  • confirm() pro potvrzení akce uživatelem.

  • Výsledek zobrazen pouze při potvrzení sčítání.

Vylepšení oproti začátečnické verzi

  • Kompaktnější a přehlednější logika.

  • Použití řetězcové interpolace (template literals).

  • Sjednocená kontrola platnosti do jediné proměnné platne.

  • Zachována explicitní kontrola isNaN(...) == false kvůli čitelnosti.

  • Modernější styl, ale logicky totožný výsledek.

Poznámky

  • Pokud uživatel stiskne Zrušit v kterémkoli promptu, proměnná bude mít hodnotu null, což je potřeba otestovat dříve než převádíme na číslo.

  • Hodí se ošetřit i prázdný řetězec – Number("") se převede na 0, což může být zavádějící (v základní úloze to ale nevadí).