betingelser ved hjælp af logiske operatorer
logiske operatorer og Kortslutningsevalueringer
i Javascript er der tre logiske operatorer, &&
||
!
…
&&
: logisk og (returnerer expr1
hvis det kan konverteres til false
. Hvis ikke, returnerer expr2
.)
||
: logisk eller (returnerer expr1
hvis det kan konverteres til true
. Hvis ikke, returnererexpr2
.)
!
: logisk ikke (returnerer false
hvis dens enkelt operand kan konverteres til true
. Hvis ikke, returnerer 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
i ovenstående eksempler bruges de logiske operatorer sammen med sammenligningsoperatorer < > = == === >= <= != !==
, som alle returnerer boolske værdier: true
og false
.
i Example &&
evalueres udtrykket til venstre (x<20
) først, hvilket returnerer true
. Fordi &&
dette vendte ikke tilbage false
, fortsætter det med at evaluere ekspessionen til højre (y>1
). Dette udtryk evalueres også til true
, derfor returneres udtrykket til venstre, hvilket er true
. Således, når &&
bruges med boolske værdier, &&
returnerer true
når begge operander er sande og returnerer false
de er ikke.
i Example ||
evalueres udtrykket til venstre (x==3
) først, hvilket returnerer false
. Da denne værdi ikke er sand, returnerer den straks udtrykket til højre (y==3
), hvilket er false
. Derfor, når ||
bruges med boolske værdier, ||
returnerer true
når enten operand er sandfærdig.
i Example !
er udtrykket x==y
false
. Dernæst !
konverterer udtrykket fra false
til ikke false
; med andre ord true
.