&& en || gebruiken buiten een if-clausule in JavaScript
U hebt de operatoren &&
en ||
misschien wel eens gebruikt wanneer u een voorwaarde in een if
-clausule schrijft. Maar wist u dat ze in JavaScript evalueren naar expressiewaarden, zoals tekenreeksen en getallen, in plaats van naar de booleaanse waarden true
en false
?
Dit stelt u in staat de operatoren &&
en ||
te gebruiken in expressies buiten de if
-clausule om. Het biedt korte manieren om een vroegtijdige stop uit te drukken met behulp van &&
en om een standaardwaarde uit te drukken met behulp van ||
.
If-clause werkt op truthy en falsy waarden
Het feit dat &&
en ||
operatoren evalueren naar strings en getallen breekt de if
-clause niet omdat condities anders worden geëvalueerd in JavaScript.
In plaats van dat de if
-clausule zijn volgende zet bepaalt op basis van true
of false
, bepaalt hij dat de voorwaarde waarheidsgetrouw of vals is.
De definitie is
Een waarde is vals als deze
false
,null
,undefined
,''
,0
ofNaN
is. Een waarheidsgetrouwe waarde is elke waarde die niet als vals wordt beschouwd.
Laten we deze informatie in gebruik nemen.
Gebruik && om u te beschermen tegen ongedefinieerd
Een veel voorkomende situatie is de toegang tot geneste objecteigenschappen met behulp van puntnotatie. Bijvoorbeeld request.session.id
. In dit geval, als een object langs de weg undefined
een “Uncaught TypeError: Cannot read property of undefined” fout wordt gegooid.
De fout kan worden vermeden door &&
te gebruiken om veilig te zijn tegen undefined.
Hier evalueert de expressie veilig naar undefined
zonder een fout te gooien.
De definitie voor &&
is
De
&&
-operator evalueert naar de expressie aan de linkerkant als deze falsy is, anders naar de expressie aan de rechterkant.
Gebruik || om standaard waarde te geven
Een ander veel voorkomend gebruik is om een waarde op te halen, en als die niet bestaat dan een standaard waarde te gebruiken.
Dit kan worden bereikt met behulp van ||
-operator.
De definitie voor ||
is
De
||
-operator evalueert naar de linkse expressie als deze waarheidsgetrouw is, anders naar de rechtse.
Leesbaarheid
Deze twee nieuwe tools zijn een mooie toevoeging aan uw gereedschapskist. Maar zoals altijd, leesbaarheid komt op de eerste plaats. Gebruik ze verstandig, waar ze het beste passen. Zorg ervoor dat iedereen in je team weet hoe je ze moet gebruiken, bijvoorbeeld door dit artikel aan hen door te geven.