Denne opplæringen vil demonstrere prosedyren for å lage konstante enums i JavaScript.
Hvordan kan jeg garantere at min Enums-definisjon ikke endres i JavaScript?
Å skape en konstant ' enum ' i JavaScript, bruk ' Object.freeze() 'metoden. Det gjør et objekt uforanderlig, uforanderlig eller skrivebeskyttet. Det forhindrer endring av egenskapene til objektet, for eksempel å legge til eller fjerne objektattributter, eller oppdatere verdier for de eksisterende egenskapene.
Eksempel
Først oppretter du en enum ' Størrelse ' ved å bruke objektliteraler der egenskapene til objektet vil være med store bokstaver:
konst Størrelse = {
LITEN : 'liten' ,
MEDIUM : 'medium' ,
STOR : 'stor'
} ;
Ring ' Object.freeze() ”-metoden og send enum som et argument for å gjøre enum-definisjonen uforanderlig:
Gjenstand . fryse ( Størrelse ) ;
Skriv ut opptegnelsen som heter ' Størrelse ' på konsollen:
konsoll. Logg ( Størrelse ) ;
Produksjon
Her får vi bare verdiene til objektegenskapene eller enum ved å bruke ' Object.values() ”-metoden og vis alle verdiene mot hvert attributt på konsollen:
konst størrelse = Gjenstand . verdier ( Størrelse ) ;
konsoll. Logg ( størrelse ) ;
Utdataene viser matrisen av verdier for enum:
Nå vil vi prøve å legge til en ny konstant ' XLARGE 'med sin verdi' xlarge ” til enum-objektet og skriv ut objektet på konsollen:
Størrelse. XLARGE = 'xlarge' ;konsoll. Logg ( Størrelse ) ;
Utgangen viser at den nye konstanten ikke er lagt til i enum-objektet:
La oss nå endre eller oppdatere verdien av konstanten ' LITEN ' som ' sm ':
Størrelse. LITEN = 'sm' ;Skriv ut verdiene til konstantene til enum-objektene ved å bruke 'Object.values()'-metoden:
konst størrelse = Gjenstand . verdier ( Størrelse ) ;konsoll. Logg ( størrelse ) ;
Den vil ikke oppdatere verdien til konstanten 'SMALL':
Mens du ikke bruker ' Object.freeze() ”-metoden, kan du enkelt endre objektets egenskaper:
Det var i ferd med å garantere at enums-definisjonen ikke endres i JavaScript.
Konklusjon
For å skape en konstant ' enum ' i JavaScript, bruk ' Object.freeze() ” metode som forhindrer å legge til eller fjerne enum-konstanter eller oppdatere verdiene til de eksisterende konstantene. Det gjør et objekt uforanderlig, eller uforanderlig. Denne opplæringen demonstrerte prosedyren for å lage konstante enums i JavaScript.