2. Zmienne, stałe i podstawowe typy danych
~25 min
podstawowy
Zmienne przechowują dane, z którymi pracujemy. JavaScript jest dynamicznie typowany – typy sprawdzane w runtime.
Deklaracja zmiennych
Używaj let dla zmiennych modyfikowalnych, const dla stałych. Unikaj var (starsze, hoisting może powodować błędy).
let imie = "Ola"; // String, modyfikowalny
const wiek = 24; // Number, stały
let czyStudent = true; // Boolean
Zasada:
const – nie zmieniamy wartości (błąd przy próbie), let – możemy zmieniać. Zawsze używaj const domyślnie.
Podstawowe typy danych
- string → "tekst", 'tekst', `Hello ${imie}` (template literals – interpolacja)
- number → 42, 3.14, -5 (wszystko to liczby, bez rozróżnienia int/float)
- boolean → true / false
- null → celowo brak wartości (np. let x = null;)
- undefined → zmienna bez przypisanej wartości (np. let y;)
Ciekawostka: Template literals (`backticks`) pozwalają na wieloliniowe stringi i wyrażenia: `Witaj, ${imie}! Masz ${wiek*2} lat?`.
Modyfikacja zmiennych
let punkty = 100;
punkty = punkty + 30; // 130
punkty += 20; // 150 (skrót dla +=, -=, *=, /=)
punkty++; // 151 (inkrementacja)
Ostrzeżenie: Próba zmiany
const rzuci błąd: TypeError.
Sprawdzanie typów
Użyj typeof do weryfikacji:
console.log(typeof imie); // "string"
console.log(typeof wiek); // "number"
Ciekawostka: typeof null zwraca "object" – historyczny bug w JS, ale nie zmieniaj null na undefined.
Ćwiczenie
- Deklaruj
constnazwa = "Twoje imię"; i wyświetl w konsoli z template literal. - Stwórz
letlicznik = 0; inkrementuj 5 razy i wyświetl. - Sprawdź typeof undefined zmiennej i null.
Poprawka do oryginału: Dodano o typeof, inkrementacji, unikaniu var; rozszerzono przykłady.