Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Operatory JavaScript oraz opis składni

Wyrażenie w języku JavaScript jest podobne do wyrażenia w języku VBScript, posiada jednak więcej operatorów i dlatego jest bardziej ogólne i bardziej elastyczne (patrz Lista operatorów języka VBScript). Z tego powodu system PROMOTIC w niektórych miejscach wykorzystuje raczej wyrażenie w języku JavaScript.
 
Porównanie:
- Wyrażenie dodawanie, odejmowanie, mnożenie, dzielenie .. ma taką samą formę zarówno w języku JavaScript jak i języku VBScript, np.
(4 * x + 1) / 3
- Wyrażenie operacji logicznych rodzaju "i równocześnie", "albo" .. są już różne, np.
w JavaScript: (b1 && b2) || b3
w VBScript: (b1 And b2) Or b3.
- Bardzo przydatne warunkowe wyrażenie JavaScript (np. b ? 1 : 2) nie można w języku VBScript w ogóle zapisać.
 
Wyrażenie JavaScript w systemie PROMOTIC jest stosowane:
- w elementach graficznych w powiązaniu danych E - Powiązanie z wyrażeniem ogólnym.
w obiekcie PmExpr, przeznaczonym do dynamicznego obliczania wyrażeń JavaScript.
- w parametrach poleceń pliku źródłowego dla obiektu PmReport - patrz Opis źródłowego pliku obiektu PmReport.
 
Lista operatorów wyrażenia JavaScript:
 

Operatory arytmetyczne:

operator Opis
v1 + v2 Dodawanie liczb lub połączenie łańcuchów
v1 - v2 Odejmowanie liczb
v1 * v2 Mnożenie liczb
v1 / v2 Dzielenie liczb
v1 % v2 Modulo (reszta po dzieleniu v1/v2)
v1 ? v2 : v3 Jeżeli wartość v1 jest równa true, wtedy jest zwracana wartość v2, w innym przypadku jest zwracana wartość v3
v1++ Inkrement liczby = dodanie wartości 1 (v1=v1+1)
v1-- Dekrement liczby = odjęcie wartości 1 (v1=v1-1)
Przykład:
JavaScriptWybierz oraz skopiuj do schowka

var val;

val = 1 + 2;  //Zwraca 3
val = true + 1;  //Zwraca 2
val = false + false;  //Zwraca 0
val = 6 + "Kociol";  //Zwraca "6Kociol"
val = "Kociol" + false;  //Zwraca "Kociolfalse"
val = "Kociol" + "Zawór";  //Zwraca "KociolZawór"

val = 12 % 5;  //Zwraca 2
val = -1 % 2;  //Zwraca -1
val = 1 % -2;  //Zwraca 1
val = -4 % 2;  //Zwraca -0
val = 5.5 % 2;  //Zwraca 1.5

Operatory porównawcze:

operator Opis
v1 == v2 Zwraca true jeżeli v1 oraz v2 są takie same
v1 != v2 Zwraca true jeżeli v1 oraz v2 są różne
v1 >= v2 Zwraca true jeżeli v1 jest większe lub równe v2
v1 > v2 Zwraca true jeżeli v1 jest większe niż v2
v1 <= v2 Zwraca true jeżeli v1 jest mniejsze lub równe v2
v1 < v2 Zwraca true jeżeli v1 jest mniejsze niż v2
 
- System PROMOTIC aktualnie nie wspiera rygorystyczne JavaScript porównawcze operatory typu === oraz !==.
- Dwie wartości typu String (tekst) są porównywane wg standardowej kolejności alfabetycznej, stosując Unicode wartości.
- Podczas porównania liczby oraz tekstu (String) tekst zostanie skonwertowany na liczbę.
- Jeżeli jeden z operandów jest typu Boolean, wtedy ten operand zostanie skonwertowany na 1 jeżeli jest true oraz 0 jeżeli jest false.
 
Przykład:
JavaScriptWybierz oraz skopiuj do schowka

var val;

val = 1 == 1;  //Zwraca true
val = 1 == "1";  //Zwraca true
val = "1" == 1;  //Zwraca true
val = 0 == false;  //Zwraca true

val = 1 != 2;  //Zwraca true
val = 1 != "1";  //Zwraca false
val = 1 != true;  //Zwraca false
val = 0 != false;  //Zwraca false

Operatory logiczne:

v1 && v2 Logiczne AND (zwraca true jeżeli v1 oraz v2 jest true)
v1 || v2 Logiczne OR (zwraca true jeżeli v1 lub v2 jest true)
!v1 Logiczne NOT (zwraca true jeżeli v1 jest false)

Operatory bitowe:

operator Opis
v1 & v2 Bitowe AND (każdy bit zwróconej wartości jest wynikiem operacji AND odpowiednich bitów v1 oraz v2)
v1 | v2 Bitowe OR (każdy bit zwróconej wartości jest wynikiem operacji OR odpowiednich bitów v1 oraz v2)
v1 ^ v2 Bitowe XOR (każdy bit zwróconej wartości jest wynikiem operacji XOR odpowiednich bitów v1 oraz v2)
~v1 Bitowe NOT (każdy bit zwróconej wartości jest wynikiem operacji NOT odpowiedniego bitu v1). W systemie PROMOTIC na razie nie implementowane.
v1 << v2 Bitowe przesunięcie w lewo (wartości bitów w v1 zostaną przesunięte o v2 bitów w lewo). Na przykład v1<<2 zwraca dwukrotność wartości v1.
v1 >> v2 Bitowe przesunięcie w prawo (wartości bitów w v1 zostaną przesunięte o v2 bitów w prawo). Na przykład v1>>2 zwraca wynik dzielenia w zakresie liczb całkowitych v1/2.
 
Operatory bitowe w języku JavaScript wymagają wartości całoliczbowe (4-bajtowa liczba całkowita).

Jeżeli wartość nie jest całoliczbowa, wtedy operator najpierw tą wartość zamieni na liczbę całkowitą.

Jeżeli wartość nie można zamienić, wtedy operator zwraca wartość NaN.

Przykład:
Patrz przykłady w opisie powiązania danych E - Powiązanie z wyrażeniem ogólnym.
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice