JavaScript | Pasirinktinai grandininis

Javascript Pasirinktinai Grandininis



Pasirenkama grandinės sujungimas yra gana nauja „JavaScript“ funkcija, kurią pristatė ECMA international. Jis naudojamas giliai įdėtų objektų savybėms patikrinti, nesijaudinant, kad nuosavybės nėra. Tai yra saugus būdas patikrinti tas vertes be klaidų. Pasirenkamas grandinės operatorius grąžina neapibrėžtą reikšmę vietoj klaidos, kai nuoroda neegzistuoja. Šios funkcijos kode tikrai neprireiks, tačiau dažnai ji gali būti labai naudinga. Pasirenkamas grandinės sujungimas veiks geriausiai, kai nesate tikri, kaip iš tikrųjų gali atrodyti duomenys, pvz., dirbant su API.

Pasirenkamas besikeičiantis operatorius tęs kelią tol, kol pasieks nuosavybės vertę arba atsiras klaida:

tegul darbuotojas = {
Pirmas vardas : 'Jonas' ,
pavardė : 'Eiras' ,
Amžius : 3. 4
} ;

konsolė. žurnalas ( darbuotojas. adresu ? . užtrauktukas ) ;







Jei būtume bandę pasiekti tą pačią nuosavybės vertę nenaudodami pasirenkamo grandininio operatoriaus, gautume klaidą:



tegul darbuotojas = {
Pirmas vardas : 'Jonas' ,
pavardė : 'Eiras' ,
Amžius : 3. 4
} ;

konsolė. žurnalas ( darbuotojas. adresu . užtrauktukas ) ;



Pasirenkamas sujungimas naudojant metodų iškvietimus

Pasirenkamas grandinės sujungimas taip pat veikia metodų iškvietime. Jei nesate tikri, ar objekte yra metodas, galite naudoti pasirenkamą grandininę funkciją. Naudojimo atvejo pavyzdys yra duomenys, gauti iš API, kurioje gali būti arba nebūti tam tikrų funkcijų, priklausomai nuo vartotojo įrenginio:





tegul darbuotojas = {
Pirmas vardas : 'Jonas' ,
pavardė : 'Eiras' ,
Amžius : 3. 4
} ;

konsolė. žurnalas ( darbuotojas. metodas ? . ( ) ) ;

Be pasirenkamo grandininio sujungimo:



tegul darbuotojas = {
Pirmas vardas : 'Jonas' ,
pavardė : 'Eiras' ,
Amžius : 3. 4
} ;

konsolė. žurnalas ( darbuotojas. metodas ( ) ) ;

Pasirenkamas grandinės operatorius taip pat gali būti naudojamas kelis kartus viename sakinyje, kad būtų išvengta klaidų.

Pasirinktinis grandinės sujungimas su Nullish sujungimo operatoriumi

Pasirenkamas grandinės sujungimas taip pat gali būti suporuotas su ?? operatorius, kad pateiktų numatytąją vertę, jei nuosavybės ar metodo nėra:

tegul darbuotojas = {
Pirmas vardas : 'Jonas' ,
pavardė : 'Eiras' ,
Amžius : 3. 4
} ;

konsolė. žurnalas ( darbuotojas. metodas ? . ( ) ?? 'Funkcija neegzistuoja' ) ;

Numatytoji reikšmė taip pat gali būti kai kurios funkcijos iškvietimas.

Neprivalomas grandinės per didelis naudojimas

Siekiant padidinti kodo skaitomumą ir eleganciją, buvo įvestas pasirenkamas grandinės sujungimas. Jį reikia naudoti atsargiai, nes tai gali nutildyti klaidas. Pernelyg didelis pasirenkamo grandinės operatoriaus naudojimas gali sukelti kodo problemų.

Išvada

Pasirenkamas grandininis sujungimas yra neseniai pridėta „JavaScript“ funkcija, kurią galima naudoti norint pasiekti giliai įdėtų „JavaScript“ objektų ypatybes ir metodus, nesijaudinant dėl ​​rankinio tų metodų ir savybių patikrinimo.