Strona główna › Pytania INF.03 › Pytanie 451
INF.03 · pytanie #451
Jakie wartości zostaną wypisane po wykonaniu poniższego skryptu? <pre class="code-block">var x = 1; var y; /*0*/ ++y; /*1*/ document.write(++x); /*2*/ document.write(" "); /*3*/ document.write(x--); /*4*/ document.write(" "); /*5*/ document.write(x); </pre>
- A1 2 2
- B1 2 1
- C2 1 1
- D2 2 1
Poprawna odpowiedź: D. 2 2 1
Kliknij odpowiedź, którą uważasz za poprawną.
Wyjaśnienie
Wynik działania skryptu JavaScript wypisuje wartości według kolejności operacji na zmiennej x. Na początku wartość x wynosi 1. Pierwsza operacja preinkrementacji ++x zwiększa wartość x o 1 przed jej użyciem, więc teraz x wynosi 2. Kolejna instrukcja wypisuje tę wartość. Następnie w kodzie jest spacja, która oddziela kolejne wartości. Kolejna operacja to postdekrementacja x--, która wypisuje aktualną wartość x, a dopiero potem zmniejsza ją o 1. W efekcie wypisywane jest 2, a następnie x zmienia wartość na 1. Ostatecznie dokument.write wypisuje spację i końcową wartość x, która wynosi 1. W praktycznych zastosowaniach preinkrementacja i postdekrementacja są często używane w pętlach lub operacjach, gdzie istotna jest kolejność modyfikacji wartości. Użycie odpowiednich operatorów wpływa na logikę programu, co jest kluczowe przy pisaniu i analizowaniu kodu. Ważne jest również zrozumienie różnic między pre- a post-operatorami inkrementacji i dekrementacji, co jest podstawą w programowaniu JavaScript.
🤖 Wyjaśnienie generowane przez AI – weryfikuj w oficjalnych źródłach.