Jak zamrozić obiekt w JavaScript

Jak zamrozić obiekt w JavaScript
Czy kiedykolwiek byłeś złapany w sytuacji, w której konieczne jest stworzenie niezmiennego obiektu JavaScript i zapobieganie zmianie wartości istniejących właściwości? W takim przypadku użyj „Obiekt.zamrażać()„Metoda w programie JavaScript i uczyń ją niezmienny typ danych.

Co to jest obiekt.Metoda Freeze ()

„„Obiekt.zamrażać()”Metoda jest stosowana do zamrażać już zadeklarowany obiekt I ograniczać to wszystko z manipulacja takie jak dodanie nowych właściwości, usuwanie istniejących właściwości i aktualizacja wartości istniejących właściwości.

W tym poście omówi metodę zamrażania obiektu w JavaScript. A więc zacznijmy!

Jak zamrozić obiekt w JavaScript

Domyślnie obiekty JavaScript są „zmienny”Typ danych, co oznacza, że ​​ich wartości można zmienić z czasem. Możesz jednak to zrobić „niezmienny„Ogłaszając to jako„stały".

Gdy obiekt jest tworzony za pomocą „const„Słowo kluczowe, nadal możesz indywidualnie ponownie przypisywać lub zmienić wartości jego właściwości, ale będąc niezmiennym typem danych, JavaScript nie pozwala na ponowne uzupełnienie całego obiektu na coś innego.

Spójrz na poniższy przykład, aby zrozumieć określoną koncepcję.

Przykład

Na przykład utworzymy obiekt o nazwie „pracownik„Posiadanie następujących właściwości:

const pracownika =
Wiek: 30,
Nazwa: „Alex”
;
konsola.log (pracownik);

Po tym spróbujemy zaktualizować wartości „pracownik„Obiekt jako całość:

pracownik =
Wiek: 35,
Imię: „Paul”
;
konsola.log (pracownik);

Jak widać, wykonanie określonego wyjścia operacyjnego „Typeerror„Który stwierdza, że ​​przypisanie do już zadeklarowanej zmiennej stałej nie jest możliwe:

Teraz sprawdzimy drugą sprawę, indywidualnie przeniesiając wartość do pracownik „Obiekt„nazwa" nieruchomość:

pracownik.name = "max";
konsola.log („Po zmianie pracownika.Nazwij wartość właściwości ”);
konsola.log (pracownik);

Dane wyjście oznacza, że ​​„pracownik.nazwa„Wartość właściwości jest aktualizowana do„Max”:

Teraz udowodniono, że chociaż obiekt staje się „niezmienny”Z pomocą„const”Słowo kluczowe, nadal pozwala indywidualne przeniesienie wartości właściwości.

Możesz "zamrażać„Obiekt w sytuacji, w której konieczne jest ograniczenie obiektu od aktualizacji istniejących właściwości lub dodania nowych właściwości.

Chcę to zrobić? Postępuj zgodnie z poniższą sekcją, aby dowiedzieć się więcej o zamrażaniu obiektu w JavaScript.

Jak zamrozić obiekt w JavaScript za pomocą obiektu.Metoda Freeze ()

„„Obiekt.zamrażać()„Metoda jest wykorzystywana do zamrozilenia już zadeklarowanego obiektu. Gdy obiekt zostaje zamrażany, zapobiega usunięciu istniejących właściwości obiektu, dodanie nowych właściwości, aktualizacji wyliczenia, pisania i konfiguracji istniejących właściwości. Ponadto nie można zmienić prototypu obiektu i wartości istniejących właściwości po zamrożeniu powiązanego obiektu.

Składnia

Obiekt.Freeze (OBJ)

Tutaj, "obj”Reprezentuje obiekt JavaScript, który zostanie zamrażany za pomocą„Obiekt.zamrażać()" metoda.

Przykład: Jak zamrozić obiekt w JavaScript za pomocą obiektu.Metoda Freeze ()

Przede wszystkim zamrozimy „pracownik„Obiekt za pomocą„Obiekt.zamrażać()" metoda:

Obiekt.zamrozić (pracownik);

W momencie zamrożenia „pracownik„Obiekt, wartość„pracownik.wiek" Jest "30,”I„ „pracownik.nazwa”Jest ustawiony jako„Max”:

W następnym kroku zweryfikujemy, czy „pracownik„Obiekt jest zamrażany lub nie. W tym celu JavaScript oferuje „Obiekt.jest zamarznięty()„Wbudowana metoda, która akceptuje JavaScript”obiekt„Jako argument i wraca”PRAWDA„Jeśli podany obiekt zostanie zamrozi, w przeciwnym razie przypadek zwrotu„Obiekt.jest zamarznięty()„Metoda zostanie ustawiona na„FAŁSZ”:

Obiekt.isfrozen (pracownik);

Wyjście

Wartość zwrócona przez „Obiekt.jest zamarznięty()„Metoda to„PRAWDA,„Co wskazuje, że„pracownik„Obiekt jest pomyślnie zamrażany.

Aktualizacja właściwości obiektowej w trybie ścisłym vs tryb nie ustawiony

Teraz spróbujemy zaktualizować „pracownik.nazwa„Wartość nieruchomości do„Paweł”:

pracownik.name = "Paul";
konsola.log (pracownik);

Jeśli jesteś w „Nieprzestrzenny„Tryb, wówczas określone działanie wartości aktualizacji zawiedzie cicho:

Jednak w przypadku „tryb ścisły", A "Typeerror”Będzie również wyświetlane na konsoli, jednocześnie zakończając działanie aktualizacji zamrożenia„pracownik" obiekt:

„Użyj ścisłego”;
pracownik.name = "Paul";
konsola.log (pracownik);

Wyjście

Usuwanie właściwości obiektowej w trybie ścisłym vs tryb nieprzestrzały

Podobnie nie można usunąć istniejącej właściwości zamrojonego obiektu:

Usuń pracownika.nazwa;
konsola.log (pracownik);

Powyższa dana kod będzie próbował usunąć „nazwa„Własność„ „pracownik„Przejście i upadek w milczeniu w„Nieprzestrzenny" tryb:

Podczas gdy w „ścisły tryb", A "Typeerror”Zostanie pokazane na konsoli, która stwierdza, że ​​nie można usunąć„nazwa„Własność„ „pracownik„Obiekt, którego zamroziliśmy z pomocą„Obiekt.zamrażać()" metoda:

„Użyj ścisłego”;
Usuń pracownika.nazwa;
konsola.log (pracownik);

Wyjście

To były wszystkie istotne informacje związane z zamrażaniem obiektu w JavaScript. Możesz zbadać dalej zgodnie z preferencjami.

Wniosek

JavaScript Obiekt.zamrażać() Metoda jest wykorzystywana do zamrożenia zadeklarowanego obiektu. Gdy obiekt zostaje zamrażany, zapobiega usunięciu istniejących właściwości obiektu, dodanie nowych właściwości, aktualizacji wyliczenia, pisania i konfiguracji istniejących właściwości. Ponadto nie można zmienić prototypu obiektu i wartości istniejących właściwości po zamrożeniu. W tym spisie omówiono metodę zamrażać jakiś obiekt W JavaScript.