Tento tutoriál demonstruje postup vytváření konstantních výčtů v JavaScriptu.
Jak mohu zaručit, že se definice mých výčtů v JavaScriptu nezmění?
Chcete-li vytvořit konstantu „ enum “ v JavaScriptu použijte „ Object.freeze() “ metoda. Dělá objekt neměnným, neměnným nebo pouze pro čtení. Zabraňuje úpravám vlastností objektu, jako je přidávání nebo odebírání atributů objektu nebo aktualizaci hodnot existujících vlastností.
Příklad
Nejprve vytvořte výčet ' Velikost ” pomocí objektových literálů, kde vlastnosti objektu budou velkými písmeny:
konst Velikost = {
MALÝ : 'malý' ,
STŘEDNÍ : 'střední' ,
VELKÝ : 'velký'
} ;
Zavolej ' Object.freeze() ” a předejte výčet jako argument, aby se definice výčtu nezměnila:
Objekt . zmrazit ( Velikost ) ;
Vytiskněte výčet s názvem „ Velikost “ na konzoli:
řídicí panel. log ( Velikost ) ;
Výstup
Zde získáme pouze hodnoty vlastností objektu nebo výčtu pomocí „ Object.values() ” a zobrazí všechny hodnoty pro každý atribut na konzole:
konst velikost = Objekt . hodnoty ( Velikost ) ;
řídicí panel. log ( velikost ) ;
Výstup zobrazuje pole hodnot výčtu:
Nyní se pokusíme přidat novou konstantu “ XLARGE 's jeho hodnotou' xlarge ” do objektu enum a vytiskněte objekt na konzole:
Velikost. XLARGE = 'xlarge' ;řídicí panel. log ( Velikost ) ;
Výstup ukazuje, že nová konstanta není přidána do objektu enum:
Nyní změňme nebo aktualizujme hodnotu konstanty ' MALÝ ' tak jako ' sm “:
Velikost. MALÝ = 'sm' ;Vytiskněte hodnoty konstant objektů enum pomocí metody „Object.values()“:
konst velikost = Objekt . hodnoty ( Velikost ) ;řídicí panel. log ( velikost ) ;
Neaktualizuje hodnotu konstanty „SMALL“:
I když nepoužíváte „ Object.freeze() “, můžete snadno upravit vlastnosti objektu:
To vše mělo zaručit, že definice výčtů se v JavaScriptu nezmění.
Závěr
Pro vytvoření konstanty „ enum “ v JavaScriptu použijte „ Object.freeze() ” metoda, která zabraňuje přidávání nebo odstraňování výčtových konstant nebo aktualizaci hodnot existujících konstant. Dělá objekt neměnným nebo neměnným. Tento tutoriál demonstroval postup vytváření konstantních výčtů v JavaScriptu.