Úvod do úlohy

Bez aritmetiky by žádný program nebyl úplný. Potřebujeme sčítat, odčítat, násobit, dělit a pracovat se zbytkem po dělení. Tyto operace patří mezi vůbec nejčastější, a proto je nezbytné, aby jim studenti rozuměli do hloubky. V JavaScriptu je práce s aritmetickými operátory na první pohled jednoduchá – ale skrývá v sobě i některé záludnosti, zejména proto, že stejný operátor + slouží jak pro sčítání čísel, tak pro spojování řetězců. Porozumění těmto nuancím je klíčem k psaní spolehlivého kódu.


Teorie a principy

JavaScript nabízí pět základních aritmetických operátorů:

  • + … sčítání (nebo konkatenace řetězců)

  • - … odčítání

  • * … násobení

  • / … dělení (vrací desetinné číslo, není to celočíselné dělení)

  • % … zbytek po dělení (modulo)

Chování + závisí na typu operandů:

  • Pokud jsou oba operandy čísla → provede se sčítání.

  • Pokud je alespoň jeden operand řetězec → provede se spojení řetězců (string concatenation).

Příklady:

  • 2 + 3 → 5

  • "2" + 3 → "23"

  • 2 + "3" → "23"

Další operátory (-, *, /, %) se snaží své operandy převést na čísla. Pokud převod selže, výsledkem je NaN (Not a Number).


Praktické příklady kódu


Typické chyby / záludnosti

  • Neočekávaná konkatenace: 5 + "5" vrací "55", ne 10. To je častý zdroj nedorozumění.

  • Zbytek po dělení se zápornými čísly: -10 % 3 vrací -1 (znaménko se řídí podle levého operandu).

  • Dělení nulou: 5 / 0 vrací Infinity (ne vyvolání chyby).

  • NaN při špatném převodu: 10 - "abc" vrací NaN.


Shrnutí

  • V JavaScriptu máme základní operátory: +, -, *, /, %.

  • Operátor + funguje jak pro sčítání čísel, tak pro spojování řetězců.

  • Ostatní operátory pracují jen s čísly a při nevhodném typu operandů vracejí NaN.

  • Pozor na speciální situace: dělení nulou (Infinity), zbytek u záporných čísel, nechtěnou konkatenaci.