Zmienne
W świecie programowania, zmienne są jak etykiety na pudełkach, które przechowują dane. W JavaScript, deklaracją zmiennej przygotowujemy miejsce do przechowywania danych. Oto podstawowe przykłady:
let liczba = 5;
const nazwa = 'Frontstack';
var wiek = 30;
var
- stary, ale jary
Historia var
sięga początków JavaScript, dlatego w dalszym ciągu możecie trafić na jakiś stary kod, w którym zmienne są deklarowane za pomocą var
. Kod ten oczywiście będzie działał prawidłowo, ale dzsisiaj unikamy tego sposobu tworzenia zmiennych. Czemu? O tym powiemy sobie w lekcji dotyczącej hoistingu
.
Słowo kluczowe var
umożliwia deklarowanie zmiennych z możliwością zmiany ich wartości w przyszłości.
let
- nowoczesna alternatywa
let
pojawia się w wersji ES6 (ECMAScript 2015) i rozwiązuje niektóre problemy związane z var
.
Zmienne zadeklarowane za pomocą let
są dostępne tylko w “bloku” kodu (blok kodu to kod, który znajduje się pomiędzy znakami {
oraz }
- rozszerzymy ten temat później), w którym zostały utworzone.
Przykład zasięgu blokowego:
if (true) {
let zmiennaBloku = 'Widoczna w bloku';
console.log(zmiennaBloku); // "Widoczna w bloku"
}
console.log(zmiennaBloku); // Błąd: "zmiennaBloku" nie jest zdefiniowana.
const
- stałe, niezmienne wartości
const
jest kolejnym dodatkiem z ES6 i służy do deklarowania zmiennych, których wartości nie można zmienić po inicjalizacji. Idealne do stałych wartości, jak na przykład adres URL serwera czy konfiguracja aplikacji.
Przykład użycia const
:
const PI = 3.14;
PI = 3.15; // Błąd: Próba zmiany stałej wartości
console.log(PI); // 3.14
Kiedy używać var
, let
, i const
?
var
: Unikaj, chyba że masz do czynienia z istniejącym projektem, który szeroko wykorzystujevar
.let
: Gdy potrzebujesz zmiennej, której wartość może ulec zmianie.const
: Gdy wartość zmiennej pozostaje stała przez cały czas życia aplikacji.
Przykład
Załóżmy, że tworzysz aplikację do zarządzania wydarzeniami. Użyj const
do przechowywania adresu URL API, let
do przechowywania liczby uczestników (która może się zmieniać), a var
możesz użyć, jeśli pracujesz nad starszym kodem, gdzie jest on już obecny.