Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki JavaScript

W języku JavaScript zapisano fragment kodu. Po wykonaniu skryptu zmienna x

<script>
var x = 10;
x--;
alert(x);
</script>
A. będzie równa 9 i zostanie wypisana w konsoli przeglądarki internetowej.
B. będzie równa 10 i zostanie wypisana w dokumencie HTML.
C. będzie równa 9 i zostanie wyświetlona w oknie dialogowym.
D. będzie równa 11 i zostanie wypisana w konsoli przeglądarki internetowej.
Zmienna x po wykonaniu instrukcji x-- ma wartość 9, a funkcja alert(x) pokazuje tę wartość w oknie dialogowym przeglądarki. Kod działa krok po kroku tak: najpierw var x = 10 tworzy zmienną i przypisuje jej liczbę 10. Następnie operator dekrementacji x-- zmniejsza wartość zmiennej o 1, czyli z 10 robi się 9. Ponieważ x-- występuje jako osobna instrukcja, nie ma tu praktycznej różnicy między x-- i --x, choć w wyrażeniach taka różnica już by była ważna. Na końcu alert(x) wyświetla aktualną wartość zmiennej w modalnym oknie dialogowym, a nie w treści strony ani w konsoli. W praktyce alert bywa używany do prostych testów lub komunikatów, ale w normalnych aplikacjach webowych raczej stosuje się elementy HTML, własne okna modalne albo console.log do debugowania. Moim zdaniem warto też pamiętać, że dziś częściej używa się let zamiast var, bo ma bardziej przewidywalny zakres blokowy i lepiej pasuje do współczesnych dobrych praktyk JavaScript.
W tym fragmencie łatwo pomylić trzy różne rzeczy: zmianę wartości zmiennej, miejsce wyświetlenia wyniku oraz sposób działania operatora dekrementacji. Instrukcja x-- nie zostawia wartości 10, tylko zmniejsza ją o jeden. To nie jest samo odczytanie zmiennej ani komentarz, tylko realna operacja arytmetyczna przypisująca do x nową wartość. Zapis x-- oznacza mniej więcej: weź aktualną wartość x i zmniejsz ją o 1. Gdy taka instrukcja stoi sama w osobnej linii, po jej wykonaniu x wynosi 9. Częsty błąd polega na kojarzeniu postdekrementacji z tym, że najpierw zwraca starą wartość. To prawda, ale ma znaczenie głównie wtedy, gdy używasz jej w większym wyrażeniu, na przykład y = x--. Tutaj nic nie odbiera tej starej wartości, więc liczy się końcowy stan zmiennej. Niepoprawne jest też założenie, że alert wypisuje wynik w dokumencie HTML albo w konsoli. Do dokumentu używało się kiedyś np. document.write, choć to słaba praktyka w nowoczesnych stronach. Do konsoli służy console.log(x), używany głównie podczas debugowania. alert(x) blokuje interfejs strony i pokazuje małe okno dialogowe przeglądarki. W branżowej pracy raczej nie buduje się na tym komunikacji z użytkownikiem, ale do zrozumienia działania skryptu jest to całkiem proste i konkretne narzędzie.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.