Kolejność działań
W szkole nas uczono, że w wyrażeniach takich jak 2 + 3 * 4, najpierw robimy mnożenie. Mnożenie ma bowiem wyższy priorytet. W języku JavaScript również ustalono priorytety. Zaleca się jednak, aby nie polegać na tym, tylko stosować nawiasy (chodzi o jednoznaczność i czytelność zapisu).
W poniższej tabeli wymieniono poznane dotąd operatory w kolejności priorytetów - od największego do najmniejszego.
Operator | Opis |
---|---|
++ -- - ! |
Operatory jednoargumentowe, inkrementacja, dekrementacja, negacja, ... |
* / % |
Mnożenie, dzielenie, dzielenie modulo |
+ - + |
Dodawanie, odejmowanie, łączenie łańcuchów znaków |
< <= > >= |
Mniejsze niż, mniejsze lub równe, większe niż, większe niż lub równe |
&& |
AND logiczne |
Najmniejszy priorytet ma ||
- OR logiczne (pominięte w tabeli ze względów technicznych).
Zmiana kolejności działań.
Aby uczynić wyrażenia bardziej czytelne, możemy użyć nawiasów. Na przykład, 2 + (3 * 4)
jest zdecydowanie łatwiejsze do zrozumienia niż 2+ 3 * 4
(ten zapiswymaga znajomości priorytetów operatorów. Jak ze wszystkim, nawiasy powinny być wykorzystywane racjonalnie – nie należy stosować ich w nadmiarze - jak w (2 + (3+4))
.
Podstawową funkcją nawiasów jest jednak modyfikacja kolejności działań. Na przykład, jeśli chcesz wykonać dodawanie przed mnożeniem, to można napisać: (2 + 3) * 4
.
Łączność
Operatory są zwykle stosowane z lewej do prawej. Oznacza to, że operatory o tym samym priorytecie są stosowane od lewej do prawej. Na przykład, 2 + 3 + 4
jest równoważny z (2 + 3) + 4
.