Aby w skrypcie JavaScript pobrać dane wpisane przez użytkownika, można posłużyć się oknem generowanym przez funkcję:
Źle.
document.write() wypisuje treść do dokumentu HTML, niczego nie pobiera od użytkownika.Źle.
alert() tylko wyświetla komunikat i przycisk OK - nie przyjmuje żadnych danych.Dobrze.
prompt() wyświetla okno z polem tekstowym i zwraca wpisany tekst.Źle.
confirm() daje tylko OK/Anuluj i zwraca wartość logiczną, a nie wpisany tekst.Poprawna jest
prompt(), ponieważ to jedyna z wymienionych funkcji, która pobiera dane wpisane przez użytkownika. Wyświetla ona okno dialogowe z treścią pytania oraz polem tekstowym, a po zatwierdzeniu zwraca wpisany tekst jako łańcuch znaków (string). Wartość tę można od razu zapisać w zmiennej i wykorzystać dalej w kodzie, np. let imie = prompt('Podaj imię:');. Gdy użytkownik kliknie Anuluj, funkcja zwraca null. Warto pamiętać, że wynik jest zawsze tekstem - jeśli potrzebujesz liczby, trzeba go przekonwertować, np. funkcją Number(). Dzięki temu prompt() umożliwia prostą interakcję ze stroną bez budowania formularza HTML.Kluczowe jest to, czy dana funkcja faktycznie odbiera tekst od użytkownika, a robi to tylko jedna z nich.
alert() wyświetla wyłącznie komunikat z przyciskiem OK - użytkownik może go jedynie przeczytać i zamknąć, więc do pobierania danych się nie nadaje. confirm() pokazuje pytanie z przyciskami OK i Anuluj, ale zwraca tylko wartość logiczną: true po kliknięciu OK lub false po Anuluj - nadaje się do potwierdzeń, nie do wpisywania tekstu. Z kolei document.write() działa w drugą stronę: wypisuje przekazaną treść bezpośrednio do dokumentu HTML, czyli generuje zawartość strony, a nie pozyskuje ją od odwiedzającego. Danymi wpisanymi przez człowieka zajmuje się prompt(), która wyświetla okno z polem tekstowym i zwraca wpisany ciąg znaków - dlatego to ona jest tu poprawną odpowiedzią.