Warunki wykorzystujące operatory logiczne
operatory logiczne i oceny zwarciowe
w języku Javascript istnieją trzy operatory logiczne, &&
||
!
…
&&
: logical AND (zwraca expr1
, jeśli można ją przekonwertować na false
. Jeśli nie, zwraca expr2
.)
||
: logiczne OR (zwraca expr1
, jeśli można je przekonwertować na true
. Jeśli nie, zwracaexpr2
.)
!
: logiczne NOT (zwraca false
, jeśli jego pojedynczy argument można przekonwertować na true
. Jeśli nie, zwraca true
.)
x=10 and y=4 Example && x < 20 && y > 1 is true
Example || x == 3 || y== 3 is false
Example ! !(x == y) is true
w powyższych przykładach operatory logiczne są używane w połączeniu z operatorami porównującymi < > = == === >= <= != !==
, które wszystkie zwracają wartości logiczne: true
i false
.
w Example &&
wyrażenie po lewej stronie (x<20
)jest obliczane jako pierwsze, które zwraca true
. Ponieważ &&
to nie zwróciło false
, przechodzi do oceny ekspresji po prawej stronie (y>1
). To wyrażenie również zwraca wartość true
, stąd zwracane jest wyrażenie po lewej stronie, które wynosi true
. Tak więc, gdy &&
jest używane z wartościami logicznymi, &&
zwraca true
, gdy oba operandy są prawdziwe i zwraca false
nie są.
w Example ||
wyrażenie po lewej stronie (x==3
) jest obliczane jako pierwsze, które zwraca false
. Ponieważ ta wartość nie jest prawdziwa, natychmiast zwraca wyrażenie po prawej stronie (y==3
), czyli false
. Dlatego, gdy ||
jest używane z wartościami logicznymi, ||
zwraca true
, gdy którykolwiek z argumentów jest prawdziwy.
w Example !
wyrażenie x==y
to false
. Następnie !
konwertuje wyrażenie z false
na nie false
; innymi słowy, true
.