Operatory

Operatory służą między innymi do wykonywania działań na zmiennych i stałych, porównywania ich wartości, przypisywania wartości.

Działania

W JavaScript używamy następujących operatorów działań:

Operator NazwaPrzykład
+ Dodawanie 2+3=5, "Jan"+" Kowalski"="Jan Kowalski"
- Odejmowanie 5-3=2
* Mnożenie (iloczyn) 2*3=6
/ Dzielenie (iloraz) 6:2=3
% Reszta z dzielenia 5%2=1
++ Inkrementacja

Zapis x++ oznacza zwiększenie wartości zmiennej x o 1. Zapis x++ jest równoważny zapisowi x = x+1.

-- Dekrementacja Zapis x-- oznacza zmniejszenie wartości zmiennej x o 1. Zapis x-- jest równoważny zapisowi x = x-1.

Operatory przypisania

W JavaScript używamy następujących operatorów przypisania, czyli operatorów służących do przypisywania zmiennej pewnych wartości:

OperatorPrzykład
= Zapis x=5 oznacza przypisanie liczby 5 do zmiennej x.
+= Zapis x+=5 oznacza przypisanie liczby o 5 większej od zawartości zmiennej x. Zapis ten jest równoznaczny z zapisem x=x+5.
-= Zapis x-=5 oznacza przypisanie liczby o 5 mniejszej od zawartości zmiennej x. Zapis ten jest równoznaczny z zapisem x=x-5.
*= Zapis x*=5 oznacza przypisanie liczby 5 razy większej od zawartości zmiennej x. Zapis ten jest równoznaczny z zapisem x=x*5.
/= Zapis x/=5 oznacza przypisanie liczby 5 razy mniejszej od zawartości zmiennej x. Zapis ten jest równoznaczny z zapisem x=x/5.
%=

Zapis x%=3 jest równoważny zapisowi x = x%1.

Operatory porównania

W JavaScript używamy następujących operatorów porównania, czyli operatorów służących do porównywania wartości dwóch zmiennych:

OperatorPrzykład
== Zapis x==y oznacza porównanie, czy zmienne x i y mają równe wartości. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
!= Zapis x!=y oznacza porównanie, czy zmienne x i y mają różne wartości. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
=== Zapis x===y oznacza porównanie, czy zmienne x i y mają równe wartości i są tego samego typu. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
!== Zapis x!==y oznacza porównanie, czy zmienne x i y mają różne wartości i nie są tego samego typu. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
> Zapis x>y oznacza zbadanie, czy zmienna x ma większą wartość niż zmienna y. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
<

Zapis x<y oznacza zbadanie, czy zmienna x ma mniejszą wartość niż zmienna y. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.

>= Zapis x>=y oznacza zbadanie, czy zmienna x ma większą lub równą wartość niż zmienna y. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
<= Zapis x<=y oznacza zbadanie, czy zmienna x ma mniejszą lub równą wartość niż zmienna y. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.

Operatory logiczne

W JavaScript używamy następujących operatorów logicznych, czyli takich, które pozwalają łączyć ze sobą różne operatory porównania:

OperatorOpisPrzykład
&& AND (i) Zapis (x==1)&&(y=1) oznacza sprawdzenie, czy zmienna x ma wartość jeden i zmienna y ma wartość jeden. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
|| OR (lub) Zapis (x==1)||(x=2) oznacza sprawdzenie, czy zmienna x ma wartość jeden lub dwa. Jeżeli tak, to jest zwracana wartość True, jeżeli nie, to jest zwracana wartość False.
! NOT (negacja)

Zapis !(x==y) oznacza sprawdzenie, czy wartości x i y są równe. Jeżeli tak to zwracana jest wartość False (gdyby nie było negacji mielibyśmy wartość True), w przeciwnym przypadku zwracana jest wartość True.

Polecam artykuł z matematyki na temat logiki.

Operator warunkowy

To bardzo ciekawy i wygodny w stosowaniu operator. W jednej linijce kodu możemy przypisać do zmiennej wartość w zależności od zadanego warunku.

SkładniaPrzykład
zmienna = (warunek)?wartość1:wartość2 Zapis t=(wiek<18)?"młodzież":"dorosły" pozwala przypisać zmiennej t tekst "młodzież", jeżeli wartość zmiennej wiek jest mniejsza niż 18 lub tekst "dorosły", gdy wartość zmiennej wiek nie jest mniejsza od 18.

Inne operatory

Są jeszcze inne operatory, których omówienie znajdziesz nieco później.

Operator Opis
typeof Bada typ zmiennej.
delete Usuwa np. element struktury tablicy.
in Sprawdza, czy jakiś element jest w zbiorze.
instanceof Sprawdza, czy dany obiekt jest instancją innego obiektu.

Kolejność wykonywania działań

Działania są wykonywane w JavaScript zgodnie z matematycznymi zasadami, które zostały opisane w artykule z matematyki: Kolejność wykonywania działań.

Łączenie liczb i łańcuchów

JavaScript ma wbudowaną automatyczną konwersję typów. Spójrz na poniższy kod i wypróbuj go:

Przykład automatycznej konwersji typu

<script>
   var ile = 5;
   var rzecz = " kwiatów";
   alert(ile+rzecz);
</script>
Lupa

Interpreter w trzeciej linijce skryptu zrobił kilka interesujących rzeczy. Po pierwsze zamienił liczbę (typ Number) na tekst (typ String) w sposób automatyczny i dopiero później połączył ze sobą teksty, wyświetlając je w oknie alertu. Tak się dzieje, gdy dodajemy do siebie liczbę i tekst. Zawsze w takim przypadku liczba będzie konwertowana do typu String. To może czasem przysporzyć problemów, choć zwykle w praktyce jest bardzo wygodne. Aby mieć pewność, że interpreter nie zamieni liczby na tekst, przed zmienną można zastosować znak "+".


© Media Nauka, 2016-11-01, ART-3237