|
Operatory arytmetyczne - Kurs języka JavaScript
Jak już wspomniałem w poprzedniej lekcji, operatory są jednym z podstawowych elementów tworzących wyrażenia w JavaScript. Począwszy od tej lekcji, będę opisywał je wszystkie. Na początek zacznę od operatorów arytmetycznych. Operatory arytmetyczne jest to pierwsza grupa operatorów. Wiele z nich powinieneś/powinnaś już znać z pierwszych klas szkoły podstawowej (jeżeli masz je już za sobą i nadal masz z nimi problemy, szczerze radzę usiąść do książek z matematyki zamiast czytać dalej ten kurs). Do tej grupy zaliczają się następujące operatory:
Oprócz wymienionych powyżej operatorów które operują na dwóch argumentach, jest także kilka operatorów które operują na jednym argumencie (w skrócie operatory jednoargumentowe). Pierwszym z nich jest minus ( k = -n; Kolejne operatory jednoargumentowe to operatory inkrementacji var n = 5; n++; // n = 6 ++n; // n = 7 n--; // n = 5 --n; // n = 4 Różnica pomiędzy operatorami prefiksowymi a postfiksowymi polega na momencie kiedy jest on "uruchamiany" - ma to znaczenie przy bardziej złożonych wyrażeniach. Operatory prefiksowe obliczane są przed wyliczeniem wartości wyrażenia (inaczej mówiąc, JavaScript najpierw zmieni wartość zmiennej, a następnie odczyta i użyje wartość tej zmiennej w wyrażeniu). Operatory postfiksowe są natomiast obliczane po wyliczeniu wartości wyrażenia (tzn. JS najpierw odczyta sobie wartość zmiennej, a następnie zmieni wartość zmiennej. var n1 = 1, n2 = 2; var w1 = ++n1 + ++n2; // w1 = 5, n1 = 2, n2 = 3 var k1 = 1, k2 = 2; var w2 = k1++ + k2++; // w2 = 3, k1 = 2, k2 = 3 Należy także uważać aby nie próbować zmieniać kilka razy wartości jednej zmiennej w trakcie obliczania wyrażenia - standard języka JavaScript nie definiuje co ma się stać w takim przypadku, zatem wyniki mogą być różne na różnych przeglądarkach. Dlatego warto inaczej zapisać swoje wyrażenie aby uniknąć tego problemu. Przykład takiego problematycznego wyrażenia jest poniżej: var n = 5; var k = n++ + n++; // k = 10 lub 11 Do grupy operatorów arytmetycznych zaliczają się też nawiasy var n = (2 + 3) * 4; // n = 20 Operator var s1 = "Witaj"; var s2 = "na stronie"; var s3 = s1 + " " + s3; // s3 = "Witaj na stronie" W języku JavaScript typy wartości użyte w wyrażeniu mogą być zamienione na inne, w zależności od wymogów operatora. Jest to szczególnie ważne w przypadku operatora
Pozostałe operatory arytmetyczne pracują tylko na liczbach, więc przekazanie im parametrów innych typów spowoduje że język JavaScript będzie próbował konwertować je na liczbę. Jeżeli chcesz jawnie zamienić ciąg znaków na liczbę, możesz użyć funkcji var n1 = "1"; var n2 = "2.5"; var n3 = "3"; n1 = parseInt(n1); // n1 = 1 n2 = parseFloat(n2); // n2 = 2.5 n3 = n3 * 1; // n3 = 3 var suma = n1 + n2 + n3; // suma = 6.5 Aby szybko zamienić wartość na ciąg znaków, możesz dodać do niej pusty ciąg znaków: var n = 123; n = n + ""; // n = "123"
Dodaj linka na swojej stronie! Po prostu skopiuj poniższy kod i wklej go na swojej stronie WWW. Gotowy link będzie wyglądał w taki sposób: |
| ||||||||||||||||||||||||||||||||||||