Den valgfri skiftende operatør vil fortsætte ned ad stien, indtil den når en egenskabsværdi eller løber ind i en fejl:
lade medarbejder = {fornavn : 'John' ,
efternavn : 'Då' ,
Alder : 3. 4
} ;
konsol. log ( medarbejder. adresse ? . lynlås ) ;
Hvis vi havde forsøgt at få adgang til den samme ejendomsværdi uden at bruge den valgfri kædeoperator, ville vi have modtaget en fejl:
lade medarbejder = {
fornavn : 'John' ,
efternavn : 'Då' ,
Alder : 3. 4
} ;
konsol. log ( medarbejder. adresse . lynlås ) ;
Valgfri kædering på metodekald
Valgfri kæde fungerer også på metodekald. Du kan bruge valgfri kæde, når du ikke er sikker på, om der findes en metode i et objekt. Et eksempel på brug er data hentet fra en API, som muligvis indeholder visse funktioner, afhængigt af brugerens enhed:
lade medarbejder = {
fornavn : 'John' ,
efternavn : 'Då' ,
Alder : 3. 4
} ;
konsol. log ( medarbejder. metode ? . ( ) ) ;
Uden valgfri kæde:
lade medarbejder = {
fornavn : 'John' ,
efternavn : 'Då' ,
Alder : 3. 4
} ;
konsol. log ( medarbejder. metode ( ) ) ;
Den valgfri kædeoperator kan også bruges flere gange i en enkelt sætning for at undgå fejl.
Kombination af valgfri kædering med Nullish koalescerende operatør
Valgfri kæde kan også parres med ?? operatør for at angive en standardværdi, hvis egenskaben eller metoden ikke eksisterer:
lade medarbejder = {fornavn : 'John' ,
efternavn : 'Då' ,
Alder : 3. 4
} ;
konsol. log ( medarbejder. metode ? . ( ) ?? 'Funktion eksisterer ikke' ) ;
Standardværdien kan også være et funktionskald.
Valgfri kædeoverbrug
Valgfri kædering blev introduceret for at øge kodens læsbarhed og elegance. Det skal bruges med omhu, da det kan resultere i, at fejlene dæmpes. Overbrug af den valgfri kædeoperatør kan forårsage problemer i din kode.
Konklusion
Valgfri kæde er en nyligt tilføjet funktion i JavaScript, som kan bruges til at få adgang til egenskaber og metoder i dybt indlejrede JavaScript-objekter uden at skulle bekymre dig om at indsætte manuelle kontroller for eksistensen af disse metoder og egenskaber.