Termin pocielesność oznacza zmienna, pojęcie zmienności można zastosować tylko do obiektów i tablic w JavaScript. Koncepcji MUTABIBABIBABI klient klient klientów klientów prymitywnych, takich jak ciąg, boolean, liczba itp. Podczas gdy niezmienne dane odnoszą się do prymitywnych danych, których stanu nie można zmienić. W tym poście zrozumiemy różnicę między zmiennymi danymi a niezmiennymi danymi za pomocą niektórych przykładów.
Przed kierowaniem w kierunku zmiennych danych lub niezmiennych danych, początkowo musimy wyjaśnić koncepcję przechowywania danych w zmiennych JavaScript. Zmienne w JavaScript są w stanie przechowywać dwa typy wartości prymitywne lub typu odniesienia. Ogółem siedem prymitywnych typów danych jest dostępnych w JavaScript, podczas gdy istnieją trzy typy danych referencyjnych. Główną różnicą między nimi polega na tym, że w pierwotnym typie danych pamięć jest przydzielana w stosie, podczas gdy w danych odniesienia pamięć jest przydzielana w stercie. Krótko mówiąc, prymitywny typ danych jest podstawowym typem danych, podczas gdy typ danych odniesienia jest obiektem złożonym z kilku funkcji, a obiekty te są przekazywane jako odniesienie.
Zmienione dane w JavaScript
Zmienne obiekty mogą być modyfikowane lub zmienione po ich utworzeniu, ale musi pamiętać, że obiekt może mieć dwa odniesie. Tak więc wiele referencji dla jednego obiektu i dwóch obiektów o podobnych cechach to dwie różne rzeczy.
Wdrożenie zmiennych danych w JavaScript
Rozważmy przykład, aby zrozumieć zmienność w JavaScript.
Niech pracownik1 = Nazwa: „Joe Clarke”, wiek: 35, ID: 123, miasto: „London”;Utworzyliśmy obiekt nazwany pracownik i przypisaliśmy mu niektóre właściwości, w drugim wierszu utworzono inny obiekt o nazwie Employee2 i przypisaliśmy go pracownikowi, co oznacza, że pracownik2 miałby takie same nieruchomości jak pracownik. Następnie tworzymy innego pracownika i przypisujemy mu różne właściwości. Następnie sprawdziliśmy, czy „pracownik2” ma takie same nieruchomości jak „pracownik”, czy nie.
Dane wyjściowe powyższego kodu będzie:
Zobaczmy teraz, co się stanie, jeśli zmienimy wartość „pracownika 1”, wpłynie to na nieruchomości „pracownika2”? Zmodyfikujmy nasz kod:
Niech pracownik1 = Nazwa: „Joe Clarke”, wiek: 35, ID: 123, miasto: „London”;Zmodyfikujmy poprzedni przykład, na przykład, zmień nazwę pracownika 1 z „Joe Clarke” na „Dean Elgar” i sprawdź, czy wpływa to na nazwę właściwości pracownika2, czy nie.
Dane wyjściowe dla naszego zmodyfikowanego kodu będzie:
Z powyższego wyjścia możemy zobaczyć, że zmiany, które wprowadzamy na własność pracownika1, wpływają również na wartość pracownika2, dzieje się tak, ponieważ pracownik2 został utworzony z odniesieniem pracownika 1.
Niezmienne dane w JavaScript
Niezmienność odnosi się do prymitywnych wartości, takich jak ciąg, lub liczba itp., W JavaScript nie możemy ich zmodyfikować, ale możemy je przekazać za pomocą niektórych nowych wartości.
Wdrożenie niezmiennych danych w JavaScript
Poniższy przykład pomoże ci zrozumieć niezmienne typy danych.
var pracowników1 = „Daniel”;Utworzyliśmy zmienną i przypisaliśmy jej wartość. Następnie utworzyliśmy inną zmienną i przypisaliśmy ją pierwszą zmienną, jak wyróżniono na poniższym zrzucie ekranu.
Teraz zbadajmy dane wyjściowe, zobaczysz, że obie zmienne pokazują to samo wyjście:
Teraz zmień wartość „Employee2” i obserwuj, czy zmieni wartość „pracownika 1” lub wartość dla pierwszej zmiennej pozostanie taka sama:
var pracowników1 = „Daniel”;Przypisujemy „Bryn” do drugiej zmiennej:
Teraz obserwuj wyjście:
Przykład wyjaśnia, że kiedy zmieniliśmy wartość pracownika2, zaobserwowaliśmy, że zmiana nazwy drugiej zmiennej nie wpływa na wartość pierwszej zmiennej, co oznacza, że JavaScript traktuje obie z nich jako oddzielne zmienne, i faktycznie przypisuje wartość do tego Druga zmienna.
Rozważymy inny przykład, aby dowiedzieć się niezmiennych danych w JavaScript.
var str = "hello";Wzięliśmy zmienną ciągów i przypisaliśmy ją wartość „Hello”, a następnie użyliśmy metody string „Toupper”. Po uruchomieniu programu zaobserwowaliśmy, że nie zmieniło to ciągu, ponieważ w ciąży JavaScript są niezmiennymi typami danych i nie można ich modyfikować po utworzeniu.
Dane wyjściowe powyżej podanego kodu będzie:
Możesz zauważyć, że tupperCase nie zmienia dolnych liter na litery górnych, ponieważ nie możemy zmodyfikować niezmiennych danych po ich utworzeniu.
Wniosek
Zmienne dane mogą być modyfikowane w dowolnym momencie, podczas gdy niezmienne dane są sprzeczne z zmiennymi danymi, co oznacza, że zmiennych rzeczy nie można zmienić. W tym poście wyjaśniliśmy różnicę między prymitywnymi typami danych z typami referencyjnymi. Następnie rozumiemy ideę zmiennych i niezmiennych danych, w tym celu wzięliśmy kilka przykładów i wdrożyliśmy je w JavaScript. Wreszcie możemy stwierdzić, że jeśli zmienimy wartość zmiennej odniesienia, muto to również pierwotna wartość, ale zmienna prymitywna nie zmutuje.