De optionele wijzigingsoperator gaat verder totdat hij een eigenschapswaarde bereikt of een fout tegenkomt:
laat werknemer = {Voornaam : 'John' ,
achternaam : 'Doe' ,
Leeftijd : 3. 4
} ;
troosten. log ( medewerker. adres ? . zip ) ;
Als we hadden geprobeerd toegang te krijgen tot dezelfde eigenschapswaarde zonder de optionele ketenoperator te gebruiken, zouden we een foutmelding hebben gekregen:
laat werknemer = {
Voornaam : 'John' ,
achternaam : 'Doe' ,
Leeftijd : 3. 4
} ;
troosten. log ( medewerker. adres . zip ) ;
Optioneel ketenen bij methodeaanroepen
Optionele chaining werkt ook bij methodeaanroepen. U kunt optionele chaining gebruiken als u niet zeker weet of een methode binnen een object bestaat. Een voorbeeld van een use-case zijn gegevens die zijn opgehaald van een API en die al dan niet bepaalde functies kunnen bevatten, afhankelijk van het apparaat van de gebruiker:
laat werknemer = {
Voornaam : 'John' ,
achternaam : 'Doe' ,
Leeftijd : 3. 4
} ;
troosten. log ( medewerker. methode ? . ( ) ) ;
Zonder optionele chaining:
laat werknemer = {
Voornaam : 'John' ,
achternaam : 'Doe' ,
Leeftijd : 3. 4
} ;
troosten. log ( medewerker. methode ( ) ) ;
De optionele ketenoperator kan ook meerdere keren worden gebruikt binnen een enkele instructie om fouten te voorkomen.
Optionele chaining combineren met de Nullish coalescing-operator
Optionele chaining kan ook worden gecombineerd met de ?? operator om een standaardwaarde op te geven voor het geval de eigenschap of de methode niet bestaat:
laat werknemer = {Voornaam : 'John' ,
achternaam : 'Doe' ,
Leeftijd : 3. 4
} ;
troosten. log ( medewerker. methode ? . ( ) ?? 'Functie bestaat niet' ) ;
De standaardwaarde kan ook een functieaanroep zijn.
Optioneel overmatig gebruik van chaining
Optionele chaining werd geïntroduceerd om de leesbaarheid en elegantie van code te vergroten. Het moet zorgvuldig worden gebruikt, omdat het ertoe kan leiden dat fouten worden onderdrukt. Overmatig gebruik van de optionele ketenoperator kan problemen veroorzaken in uw code.
Conclusie
Optionele chaining is een recent toegevoegde functie van JavaScript die kan worden gebruikt om toegang te krijgen tot eigenschappen en methoden binnen diep geneste JavaScript-objecten zonder dat u zich zorgen hoeft te maken over handmatige controles op het bestaan van die methoden en eigenschappen.