podmíněné pomocí logických operátorů
logické operátory a zkrat vyhodnocení
v JavaScriptu, existují tři logické operátory, &&
||
!
…
&&
: logické a (vrací expr1
, pokud jej lze převést na false
. Pokud ne, vrátí expr2
.)
||
: logický OR (vrací expr1
, pokud jej lze převést na true
. Pokud ne, vrátíexpr2
.)
!
: logické ne (vrací false
, pokud lze jeho jediný operand převést na true
. Pokud ne, vrátí 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
ve výše uvedených příkladech se logické operátory používají ve spojení s porovnávacími operátory < > = == === >= <= != !==
, které všechny vracejí booleovské hodnoty: true
a false
.
v Example &&
je nejprve vyhodnocen výraz vlevo (x<20
), který vrací true
. Protože &&
to nevrátilo false
, přesune se k vyhodnocení expese vpravo (y>1
). Tento výraz se také vyhodnotí na true
, proto je vrácen výraz vlevo, což je true
. Když je tedy &&
použito s booleovskými hodnotami, &&
vrací true
, když jsou oba operandy pravdivé a vrací false
nejsou.
v Example ||
je nejprve vyhodnocen výraz vlevo (x==3
), který vrací false
. Protože tato hodnota není pravdivá, okamžitě vrátí výraz vpravo (y==3
), což je false
. Proto, když se ||
používá s booleovskými hodnotami, ||
vrací true
, když je operand pravdivý.
v Example !
je výraz x==y
false
. Dále !
převede výraz z false
na false
; jinými slovy true
.