Jaka jest różnica między var, let i const w JavaScript?
- 3810
- 1086
- Laura Zygmunt
Zmienna deklaracja po prostu informuje komputer, że istnieje zmienna i jaka wartość powinna zacząć. Podobnie jak inne języki programowania JavaScript pozwala również na deklarację zmiennych.
Istnieją trzy słowa kluczowe w JavaScript, które można użyć do deklarowania zmiennych: Let, var i const. Każde słowo kluczowe ma inne reguły i implikacje dla sposobu, w jaki można tworzyć zmienne, które można użyć.
- pozwalać: Słowo kluczowe LET deklaruje zmienną lokalną blokową, opcjonalnie inicjując ją do wartości.
Block-coped oznacza, że zmienna jest dostępna tylko w bloku, w którym została zadeklarowana, co zwykle jest oznaczone przez kręcone aparaty ortodontyczne .
- var: Słowo kluczowe VAR deklaruje zmienną z funkcją lub globalną, opcjonalnie inicjując ją do wartości.
Funkcja oznacza, że zmienna jest dostępna tylko w funkcji, w której została zadeklarowana. Zmienne globalne są dostępne w całym twoim kodzie.
- const: Słowo kluczowe Const deklaruje blokową, niezmienną zmienną stałą, i.mi. zmienna, której nie można przenieść.
Stałe są również nazywane „niezmiennymi zmiennymi”, ale jest to trochę mylące, ponieważ są to faktycznie zmienne - tylko takie, których nie można przenieść.
Jaka jest różnica między var, let i const?
Słowo kluczowe var jest najstarszym sposobem deklarowania zmiennych w JavaScript i jest obsługiwane przez wszystkie przeglądarki. Słowa kluczowe Let i Const są nowszymi dodatkami do języka i nie są obsługiwane przez starsze przeglądarki.
Jeśli chcesz obsługiwać starsze przeglądarki, możesz użyć var zamiast let lub const. Jeśli nie musisz obsługiwać starszych przeglądarek, możesz użyć Let lub Const. Jeśli chcesz, aby Twoja zmienna była niezmienna, użyj Const.
Oto kilka przykładów:
var x = 1; Niech y = 2; const z = 3; x = 4; // ok y = 5; // OK z = 6; //Błąd1234567 | var x = 1; niech y = 2; const z = 3; x = 4; // ok y = 5; // OK z = 6; //Błąd |
Jak widać, zmienne VAR i LET mogą zostać ponownie przypisane, ale zmienne stałe nie mogą nie.
Kolejna różnica między var i let/const jest taka, że zmienne var są obfite, podczas gdy zmienne let i const są blokowe.
Oznacza to, że zmienne var są dostępne tylko w ramach funkcji, w której zostały zadeklarowane. Na przykład:
funkcja foo () var x = 1; bla(); konsola.log (x); // referenceStror: x nie jest zdefiniowane123456 | funkcja foo () var x = 1; foo (); konsola.log (x); // referenceStror: x nie jest zdefiniowane |
Z drugiej strony zmienne let i const są dostępne tylko w bloku, w których zostały zadeklarowane. Na przykład:
funkcja foo () let y = 2; const z = 3; bla(); konsola.ociężały); // referenceSerror: y nie jest zdefiniowaną konsolą.log (z); // referenceStror: z nie jest zdefiniowane12345678 | funkcja foo () let y = 2; const z = 3; foo (); konsola.ociężały); // referenceSerror: y nie jest zdefiniowaną konsolą.log (z); // referenceStror: z nie jest zdefiniowane |
Podsumowując, główne różnice między var, let i const są:
- var jest objęty funkcją, gdy let i const są blokowe.
- Zmienne var można ponownie przypisać, podczas gdy zmienne LET i COND nie mogą.
- Zmienne var są deklarowane za pomocą słowa kluczowego var, podczas gdy zmienne let i const są zadeklarowane odpowiednio za pomocą słów kluczowych let i const.
- Zmienne const są niezmienne, podczas gdy zmienne var nie są.