Jak mogę zagwarantować, że definicja moich wyliczeń nie zmieni się w JavaScript?

Jak Moge Zagwarantowac Ze Definicja Moich Wyliczen Nie Zmieni Sie W Javascript



Wyliczenia to produktywny sposób określania grupy nazwanych wartości reprezentujących określoną kategorię danych, na przykład „ Dni tygodnia ”. Nie ma predefiniowanych „ wyliczenia ” w JavaScript, więc programiści mogą go zaimplementować za pomocą obiektu lub zbioru stałych. Ważne jest, aby upewnić się, że definicja wyliczenia (właściwości obiektu) nie może być modyfikowana, aby zagwarantować, że definicja wyliczenia w JavaScript pozostanie niezmieniona.

W tym samouczku zademonstrujemy procedurę tworzenia stałych wyliczeń w języku JavaScript.

Jak mogę zagwarantować, że moja definicja Enums nie zmieni się w JavaScript?

Aby stworzyć stałą „ wyliczenie ” w JavaScript, użyj „ Obiekt.freeze() ' metoda. Sprawia, że ​​obiekt jest niezmienny, niezmienny lub tylko do odczytu. Zapobiega modyfikowaniu właściwości obiektu, takim jak dodawanie lub usuwanie atrybutów obiektu lub aktualizowanie wartości istniejących właściwości.







Przykład
Najpierw utwórz wyliczenie „ Rozmiar ” używając literałów obiektowych, w których właściwości obiektu będą pisane wielkimi literami:



konst Rozmiar = {
MAŁY : 'mały' ,
ŚREDNI : 'średni' ,
DUŻY : 'duży'
} ;

Zadzwoń do ' Obiekt.freeze() ” i przekaż wyliczenie jako argument, aby definicja wyliczenia była niezmienna:



Obiekt . zamrażać ( Rozmiar ) ;

Wydrukuj wyliczenie o nazwie „ Rozmiar ” na konsoli:





konsola. dziennik ( Rozmiar ) ;

Wyjście

Tutaj otrzymamy tylko wartości właściwości obiektu lub wyliczenia za pomocą „ Obiekt.wartości() ” i wyświetl wszystkie wartości dla każdego atrybutu w konsoli:



konst rozmiar = Obiekt . wartości ( Rozmiar ) ;
konsola. dziennik ( rozmiar ) ;

Dane wyjściowe pokazują tablicę wartości wyliczenia:

Teraz spróbujemy dodać nową stałą „ XLDUŻY ” z jego wartością ” xduży ” do obiektu enum i wydrukuj obiekt na konsoli:

Rozmiar. XLDUŻY = „xduży” ;
konsola. dziennik ( Rozmiar ) ;

Dane wyjściowe pokazują, że nowa stała nie została dodana w obiekcie enum:

Teraz zmieńmy lub zaktualizujmy wartość stałej „ MAŁY ' Jak ' sm ”:

Rozmiar. MAŁY = 'sm' ;

Wydrukuj wartości stałych obiektów wyliczeniowych za pomocą metody „Object.values()”:

konst rozmiar = Obiekt . wartości ( Rozmiar ) ;
konsola. dziennik ( rozmiar ) ;

Nie zaktualizuje wartości stałej „MAŁA”:

Nie korzystając z opcji „ Obiekt.freeze() ”, możesz łatwo modyfikować właściwości obiektu:

To wszystko miało zagwarantować, że definicja wyliczeń nie zmieni się w JavaScript.

Wniosek

Za stworzenie stałej „ wyliczenie ” w JavaScript, użyj „ Obiekt.freeze() ”, która zapobiega dodawaniu lub usuwaniu stałych wyliczeniowych lub aktualizowaniu wartości istniejących stałych. Sprawia, że ​​obiekt jest niezmienny lub niezmienny. W tym samouczku zademonstrowano procedurę tworzenia stałych wyliczeń w języku JavaScript.