KWALIFIKACJA INF3 - STYCZEŃ 2015

PYTANIE NR 27.
Deklaracja w języku JavaScript:

var x=true;

powoduje, że zmienna x jest typu
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
W JavaScript wartość true jest literałem typu logicznego (boolean).
Instrukcja var x=true; przypisuje do zmiennej x wartość logiczną, więc x ma typ logiczny. Pozostałe opcje dotyczą innych typów: liczbowego, tekstowego oraz wyliczeniowego (którego JS nie ma jako typu prymitywnego).

Pełne wyjaśnienie:

W JavaScript zmienne nie mają typu "zadeklarowanego" na stałe jak w wielu językach statycznie typowanych. Typ wynika z aktualnie przypisanej wartości (dynamiczne typowanie). W zapisie var x=true; do zmiennej x przypisano literał true, który jest jedną z dwóch wartości typu logicznego (boolean): true oraz false. Dlatego zmienna x jest typu logicznego.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "liczbowego" – byłoby poprawne, gdyby przypisano liczbę, np. 1 lub 0. Częsty błąd polega na skojarzeniu true z 1, ale to tylko możliwy wynik konwersji w pewnych kontekstach, a nie pierwotny typ literału.
  • "ciąg znaków" – typ tekstowy (string) wystąpiłby, gdyby zapis był w cudzysłowie, np. "true". Bez cudzysłowu true nie jest tekstem, tylko wartością logiczną.
  • "wyliczeniowego" – JavaScript nie posiada klasycznego typu wyliczeniowego jako typu prymitywnego dla wartości true/false. W codziennej praktyce do przechowywania stanu binarnego służy właśnie boolean.

Wskazówka egzaminacyjna: rozpoznawaj literały prymitywne. true/false oznaczają boolean, liczby (np. 10, 3.14) oznaczają number, a tekst to zawsze zapis w cudzysłowie/apostrofach.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Typ logiczny (boolean) oznacza, że zmienna przechowuje jedną z dwóch wartości: true albo false. Najczęściej używa się go do warunków w if, pętlach i do zapisu flag (np. czy użytkownik jest zalogowany).
Ponieważ true jest literałem boolean. JavaScript jest dynamicznie typowany, więc typ zmiennej wynika z przypisanej wartości. Skoro przypisujesz true, to w tej chwili zmienna ma typ logiczny.
Nie. true ma typ boolean, a 1 ma typ number. W pewnych operacjach może dojść do konwersji (np. przy rzutowaniu), ale to nie znaczy, że są tym samym typem ani że można je zawsze traktować identycznie.
Wtedy przypisujesz tekst "true", czyli wartość typu string (ciąg znaków). To częsty błąd w warunkach: napis "true" nie jest tym samym co boolean true i może prowadzić do nieoczekiwanych wyników w porównaniach.
Najczęściej używa się operatora typeof. Dla przykładu: typeof x zwróci napis "boolean", gdy x ma wartość true/false. To proste narzędzie do diagnozy typów podczas debugowania.
Bardzo często: do walidacji formularzy (czy pole jest poprawne), do sterowania widocznością elementów (np. menu otwarte/zamknięte), do obsługi uprawnień (czy użytkownik ma dostęp) i do przełączników w UI (włączone/wyłączone).
Najczęściej myli się true z "true" (string) oraz traktuje boolean jak liczbę 0/1. Drugi błąd to przekonanie, że typ wynika z deklaracji var, a nie z wartości przypisanej do zmiennej.
Nie jako typ prymitywny. JavaScript ma prymitywny typ boolean z wartościami true/false. "Wyliczenia" można modelować na inne sposoby (np. obiektami lub stałymi), ale nie jest to to samo co klasyczny typ enum.
W if JavaScript dokonuje tzw. konwersji do wartości logicznej (truthy/falsy). Boolean true przechodzi jako spełniony warunek, a false jako niespełniony. Uważaj: wiele nie-booleanów też może być truthy/falsy, co bywa źródłem pomyłek.
Utrwal literały i typy prymitywne: liczby, teksty w cudzysłowie, true/false, null/undefined. Rób krótkie ćwiczenia z typeof i porównaniami. Na egzaminie zwracaj uwagę na cudzysłowy, bo często zmieniają typ odpowiedzi.
info

To pytanie poprawnie rozwiązuje 77% zdających egzamin. średnio łatwe

Specjaliści zwracają uwagę: "W JavaScript wartość true jest literałem typu logicznego (boolean).Instrukcja var x=true; przypisuje do zmiennej x wartość logiczną, więc x ma typ logiczny."

Źródła:

  • MDN Web Docs: "Boolean" (JavaScript) – opis typu i wartości true/false, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean (dostęp: 2026-02-27)
  • MDN Web Docs: "JavaScript data types and data structures" – typy prymitywne, w tym boolean, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures (dostęp: 2026-02-27)
  • MDN Web Docs: "var" – deklaracja zmiennej w JavaScript, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/var (dostęp: 2026-02-27)

Materiały:

  • Dokumentacja MDN: typ Boolean i podstawowe typy danych JavaScript
  • Ćwiczenia: operatory porównania i logiczne w JavaScript
  • Materiały do INF.3: podstawy programowania po stronie klienta (JS)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego