Kuidas ma saan garanteerida, et minu enumi definitsioon JavaScriptis ei muutu?

Kuidas Ma Saan Garanteerida Et Minu Enumi Definitsioon Javascriptis Ei Muutu



Enumsid on produktiivne viis nimeliste väärtuste rühma määramiseks, mis esindavad teatud andmekategooriat, näiteks ' Nädalapäevad ”. Eelmääratletud ' enums ” JavaScriptis, nii et arendajad saavad selle objekti või konstantide kogumi abil rakendada. Oluline on tagada, et enumi määratlust (objekti atribuute) ei saaks muuta, et garanteerida, et loendi määratlus JavaScriptis jääb muutumatuks.

See õpetus tutvustab JavaScriptis pidevate loendite loomise protseduuri.

Kuidas ma saan garanteerida, et minu enumi definitsioon JavaScriptis ei muutu?

Konstantse ' enum ' JavaScriptis kasutage ' Object.freeze() ” meetod. See muudab objekti muutumatuks, muutmatuks või kirjutuskaitstuks. See takistab objekti atribuutide muutmist, näiteks objekti atribuutide lisamist või eemaldamist või olemasolevate atribuutide väärtuste värskendamist.







Näide
Esiteks looge loend ' Suurus ” kasutades objektiliteraale, kus objekti omadused on suurtähtedega:



konst Suurus = {
VÄIKE : 'väike' ,
KESKMINE : 'keskmine' ,
SUUR : 'suur'
} ;

Helistage ' Object.freeze() ” meetod ja edastage enum argumendina, et muuta loendi määratlus muutumatuks:



Objekt . külmutada ( Suurus ) ;

Printige loend nimega ' Suurus ” konsoolil:





konsool. logi ( Suurus ) ;

Väljund

Siin saame ainult objekti omaduste või enumi väärtused, kasutades ' Object.values() ” meetodit ja kuvage kõik konsooli iga atribuudi väärtused:



konst suurus = Objekt . väärtused ( Suurus ) ;
konsool. logi ( suurus ) ;

Väljund näitab enumi väärtuste massiivi:

Nüüd proovime lisada uue konstandi ' XSUUR ' oma väärtusega ' xsuur ” enum-objektile ja printige objekt konsoolile:

Suurus. XSUUR = 'suur' ;
konsool. logi ( Suurus ) ;

Väljund näitab, et uut konstanti enum-objekti ei lisata:

Nüüd muudame või värskendame konstandi väärtust VÄIKE ” kui „ sm ”:

Suurus. VÄIKE = 'sm' ;

Printige enum-objektide konstantide väärtused meetodil 'Object.values()':

konst suurus = Objekt . väärtused ( Suurus ) ;
konsool. logi ( suurus ) ;

See ei värskenda konstandi 'SMALL' väärtust:

Kui te ei kasuta ' Object.freeze() ” meetodil saate hõlpsalt muuta objekti omadusi:

Selle eesmärk oli tagada, et enumi definitsioon JavaScriptis ei muutu.

Järeldus

Konstantse ' enum ' JavaScriptis kasutage ' Object.freeze() ” meetod, mis takistab loendikonstantide lisamist või eemaldamist või olemasolevate konstantide väärtuste värskendamist. See muudab objekti muutumatuks või muutumatuks. See õpetus demonstreeris pidevate loendite loomise protseduuri JavaScriptis.