In de snelle tip van vandaag zullen we JavaScript 'logisch beoordelen EN
operator. Degenen onder u die net JavaScript beginnen te betreden, of zelfs een bibliotheek zoals jQuery, realiseren zich misschien niet dat ze zelfs kunnen worden gebruikt als micro if-statements!
Abonneer u op onze YouTube-pagina om alle videozelfstudies te bekijken!
// VOORBEELD 1 var a = 5, b = 10; if ((a === 5) && (b === 10)) alert ('yay');
De EN
Het gebruik van de operator in de bovenstaande code is waar de overgrote meerderheid van ons het meest vertrouwd mee is. Als een
is gelijk aan 5
, en b
is gelijk aan 10
, doe dan iets geweldigs, zoals een waarschuwingsvenster weergeven met de tekst: 'Ja!'
De rechterkant van de
&&
operator zal enkel en alleen uitvoeren als de linkerkant gelijk is aan waar. Met dat in gedachten, kunnen we dit in ons voordeel gebruiken!
In de meeste van mijn AJAX-gebaseerde applicaties, zal er een punt zijn waarop ik eerst moet bepalen of een element met een bepaalde ID kaart
bestaat binnen de DOM. Als dat niet het geval is, maak ik het. Anders werk ik met het element dat al bestaat. Over het algemeen kunnen we een als
verklaring voor dit soort taken.
if (! document.getElementById ('contents')) // noem dan een functie die het element in de DOM invoegt.
Als alternatief kunnen we de &&
operator om deze taak te volbrengen.
!document.getElementById ('contents') && createElem ('div', 'contents', 'hello world');
Vergeet niet dat dat nep is createElem
functie zal, nogmaals, enkel en alleen uitvoeren als de linkerkant gelijk is aan waar
. Zie het op deze manier: is het zo waar
dat we geen element met een ID van konden vinden inhoud
op de pagina? Als dat zo is, ga dan naar de rechterkant. Als het gelijk is aan vals
, de rechterkant zal nooit rennen.
Bij het beoordelen van de HTML5-boilerschermen viel me op dat Paul een slimme one-liner gebruikt die potentieel een lokale versie van jQuery laadt, als er om de een of andere reden een fout was bij het downloaden van het bestand van je gekozen CDN.
!window.jQuery && document.write (''