logische Operatoren
Er zijn vier logische operatoren in JavaScript: ||
(OR), &&
(AND), !
(NOT) en ??
(nullish coalescing). We zullen in dit onderdeel enkel de eerste drie behandelen.
OR (||)
let a = true;
let b = false;
let result = a || b; // true
In de meeste programmeertalen werkt de OR-operator enkel op het boolean datatype. Als een van de kanten true
zijn dan geeft het true
terug en anders is het false
. In JavaScript kan je ook deze operatoren gebruiken op andere datatypes (zoals bij strings) maar hier gaan we momenteel nog niet dieper op ingaan.
Er zijn vier mogelijke combinaties:
console.log(true || true); // true
console.log(false || true); // true
console.log(true || false); // true
console.log(false || false); // false
Zoals je kan zien is het resultaat altijd true
buiten als beide operanden false
zijn.
Net zoals alle operatoren kan je deze ook gebruiken met variabelen:
let isLightOn = true;
let isUserAtHome = false;
let isHouseSafe = isLightOn || isUserAtHome;
Of je kan werken in combinatie met vergelijkingsoperatoren
let hour = 9;
let isSchoolClosed = (hour < 10 || hour > 18);
en zelfs met meerdere condities achter elkaar
let hour = 12;
let isWeekend = true;
let isSchoolClosed = (hour < 10 || hour > 18 || isWeekend);
AND (&&)
De AND (of EN) operator wordt voorgesteld door twee ampersands (&&
)
Hier zijn vier combinaties mogelijk:
console.log(true && true); // true
console.log(false && true); // false
console.log(true && false); // false
console.log(false && false); // false
Je ziet hier dus dat AND enkel true
teruggeeft als beide operanden true
zijn. Anders is het resultaat false
.
let hour = 16;
let isSchoolOpen = (hour > 10 && hour < 18);
en er kunnen er ook weer meer dan 1 achter elkaar komen
let hour = 16;
let weekday = 0; // 0 is Monday
let isSchoolOpen = (hour > 10 && hour < 18 && weekday >= 0 && weekday < 5);
of zelfs gecombineerd worden met de OR operator
let hour = 12;
let weekday = 0; // 0 is Monday
let isBellRinging = (hour == 16 && (weekday >= 0 && weekday < 4)) ||
(hour == 15 && (weekday == 4));
NOT (!)
De NOT operator wordt voorgesteld met een uitroepingsteken !
De syntax is heel eenvoudig:
let result = !value;
De not operator geeft true
terug als de operand false
is en false
als de operand true
is
console.log(!true); // false
Een voorbeeld van de NOT-operator:
let hour = 16;
let weekday = 0; // 0 is Monday
let isSchoolClosed = !(hour > 10 && hour < 18 && weekday >= 0 && weekday < 5);
Last updated