Przejdź do treści
Pełny kurs INF.03

Pytania INF.03: Aplikacje internetowe: JavaScript i PHP

1 028 pytań z odpowiedziami i wyjaśnieniem — 103 pytań teoretycznych i 37 zadań rachunkowych, każde w 25 wariantach. Zmienne, pętle, funkcje, DOM i zdarzenia w JS, formularze, sesje i mysqli w PHP.

Pytania teoretyczne (103)

1

Kod PHP wykonuje się:

  1. W przeglądarce użytkownika
  2. Po stronie bazy danych
  3. Na karcie graficznej
  4. Na serwerze, przed wysłaniem strony do przeglądarki
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Na serwerze, przed wysłaniem strony do przeglądarki

JavaScript wykonuje się u klienta, PHP na serwerze.

Ćwicz w trenerze →

2

Który zapis łączy dwa napisy w PHP?

  1. $a & $b
  2. concat($a, $b)
  3. $a + $b
  4. $a . $b
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. $a . $b

W PHP kropka, w JavaScripcie plus.

Ćwicz w trenerze →

3

Dane wysłane metodą POST odbiera się przez:

  1. $_SESSION
  2. $_SERVER
  3. $_GET
  4. $_POST
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. $_POST

GET odbiera się przez $_GET, dane widoczne w pasku adresu.

Ćwicz w trenerze →

4

Która funkcja nawiązuje połączenie z bazą MySQL w PHP?

  1. sql_link
  2. db_connect
  3. mysqli_connect
  4. mysql_open
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. mysqli_connect

Nowocześniejsza alternatywa to obiekt PDO.

Ćwicz w trenerze →

5

Funkcja mysqli_fetch_assoc zwraca:

  1. Cały wynik kwerendy naraz
  2. Kolejny wiersz wyniku jako tablicę asocjacyjną
  3. Liczbę wierszy
  4. Nazwy kolumn
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Kolejny wiersz wyniku jako tablicę asocjacyjną

Używana w pętli while do przejścia po wynikach.

Ćwicz w trenerze →

6

Ochroną przed wstrzyknięciem SQL jest:

  1. Ukrycie formularza
  2. Wyłączenie obsługi błędów
  3. Zapytania przygotowane z parametrami
  4. Zmiana nazwy bazy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Zapytania przygotowane z parametrami

Parametry są traktowane jako dane, nie jako kod SQL.

Ćwicz w trenerze →

7

Funkcja htmlspecialchars chroni przed atakiem:

  1. SQL injection
  2. DDoS
  3. Phishing
  4. XSS
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. XSS

Zamienia znaki HTML na encje, więc wstrzyknięty kod się nie wykona.

Ćwicz w trenerze →

8

Która metoda pobiera element po identyfikatorze w JavaScripcie?

  1. document.selectId
  2. document.getElementById
  3. document.getElementByClass
  4. document.findElement
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. document.getElementById

Uniwersalna alternatywa to querySelector.

Ćwicz w trenerze →

9

Czym różni się innerHTML od textContent?

  1. Nie ma różnicy
  2. innerHTML interpretuje kod HTML, textContent wstawia czysty tekst
  3. textContent działa tylko na formularzach
  4. innerHTML działa tylko do odczytu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. innerHTML interpretuje kod HTML, textContent wstawia czysty tekst

textContent jest bezpieczniejszy, bo nie wykona wstrzykniętego kodu.

Ćwicz w trenerze →

10

Metoda addEventListener służy do:

  1. Tworzenia nowego elementu
  2. Podpięcia obsługi zdarzenia do elementu
  3. Wysyłania formularza
  4. Usuwania elementu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Podpięcia obsługi zdarzenia do elementu

Pierwszy argument to nazwa zdarzenia, drugi funkcja obsługi.

Ćwicz w trenerze →

11

Metoda filter na tablicy:

  1. Zmienia wszystkie elementy
  2. Usuwa tablicę
  3. Sortuje tablicę
  4. Zwraca nową tablicę z elementami spełniającymi warunek
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zwraca nową tablicę z elementami spełniającymi warunek

map przekształca elementy, filter je wybiera.

Ćwicz w trenerze →

12

localStorage przechowuje dane:

  1. W bazie danych
  2. W przeglądarce, jako tekst, bez daty wygaśnięcia
  3. W pamięci operacyjnej do zamknięcia karty
  4. Na serwerze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. W przeglądarce, jako tekst, bez daty wygaśnięcia

Obiekty trzeba zamienić na tekst przez JSON.stringify.

Ćwicz w trenerze →

13

Operator === w JavaScripcie sprawdza:

  1. Przypisanie
  2. Równość wartości i typu
  3. Tylko równość wartości
  4. Różnicę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Równość wartości i typu

== porównuje po konwersji typów, === bez niej.

Ćwicz w trenerze →

14

Metoda preventDefault wywołana na zdarzeniu:

  1. Czyści formularz
  2. Blokuje domyślne zachowanie, np. wysłanie formularza
  3. Zatrzymuje skrypt
  4. Usuwa element
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Blokuje domyślne zachowanie, np. wysłanie formularza

Stosowana przy walidacji przed wysłaniem.

Ćwicz w trenerze →

15

Kod odpowiedzi HTTP 404 oznacza:

  1. Błąd serwera
  2. Przekierowanie
  3. Brak uprawnień
  4. Nie znaleziono zasobu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Nie znaleziono zasobu

500 to błąd serwera, 403 brak uprawnień.

Ćwicz w trenerze →

16

Sesja w PHP służy do:

  1. Łączenia z bazą
  2. Walidacji formularza
  3. Przechowywania danych użytkownika między podstronami
  4. Kompresji plików
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Przechowywania danych użytkownika między podstronami

Dane sesji trzyma serwer, ciasteczka przeglądarka.

Ćwicz w trenerze →

17

Bootstrap to:

  1. Silnik bazy danych
  2. Serwer WWW
  3. Język programowania
  4. Biblioteka gotowych styli i komponentów CSS
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Biblioteka gotowych styli i komponentów CSS

Ułatwia budowę responsywnych układów.

Ćwicz w trenerze →

18

Które hasło jest przechowywane w bazie prawidłowo?

  1. Zakodowane w Base64
  2. Zahaszowane funkcją jednokierunkową
  3. Zaszyfrowane odwracalnie
  4. Jawnym tekstem
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zahaszowane funkcją jednokierunkową

Hasła haszuje się, np. funkcją password_hash. Base64 to kodowanie, nie zabezpieczenie.

Ćwicz w trenerze →

19

Co zwróci JavaScript dla wyrażenia "SŁOŃ".toLowerCase() === "słoń"?

  1. Błąd
  2. true
  3. false
  4. SŁOŃ
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. true

toLowerCase zamieni litery na małe, dlatego oba napisy będą identyczne.

Ćwicz w trenerze →

20

Funkcja PHP sumuje rekurencyjnie liczby od n do 1. Jaki wynik zwróci dla n = 5?

  1. 10
  2. 15
  3. 120
  4. 5
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 15

5 + 4 + 3 + 2 + 1 daje 15. Wynik 120 dotyczyłby silni.

Ćwicz w trenerze →

21

Jaki typ zwróci gettype(13.0) w PHP?

  1. integer
  2. number
  3. string
  4. double
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. double

Liczba z częścią dziesiętną jest w PHP typu double, nazywanego też float.

Ćwicz w trenerze →

22

Każda zmienna w PHP musi zaczynać się od znaku:

  1. Podkreślenia
  2. Procentu
  3. Dolara
  4. Małpy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Dolara

Nazwa po dolarze rozróżnia wielkość liter: $imie i $Imie to dwie różne zmienne.

Ćwicz w trenerze →

23

Blok kodu PHP otwiera znacznik:

  1. <!--php
  2. <%php
  3. <?php
  4. <php>
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. <?php

W pliku zawierającym wyłącznie PHP znacznik zamykający pomija się celowo, żeby nie wysłać przypadkowej spacji.

Ćwicz w trenerze →

24

Ile wyniesie $x po wykonaniu $x = "5" + 3; w PHP?

  1. Błąd typu
  2. 8, bo napis zostaje zamieniony na liczbę
  3. 0
  4. "53"
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 8, bo napis zostaje zamieniony na liczbę

Plus w PHP jest wyłącznie dodawaniem. Do sklejania napisów służy kropka.

Ćwicz w trenerze →

25

Co zwróci w JavaScripcie wyrażenie "5" + 3?

  1. Liczbę 8
  2. NaN
  3. Napis "53"
  4. Błąd składni
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Napis "53"

Plus przy napisie skleja. Natomiast "5" - 3 daje liczbę 2, bo minus wymusza konwersję.

Ćwicz w trenerze →

26

Funkcja count($tablica) w PHP zwraca:

  1. Sumę wartości
  2. Liczbę elementów tablicy
  3. Liczbę znaków
  4. Długość najdłuższego elementu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Liczbę elementów tablicy

Liczbę znaków napisu daje strlen, a dla polskich liter mb_strlen.

Ćwicz w trenerze →

27

Funkcja explode(',', $tekst) w PHP:

  1. Zamienia napis na liczbę
  2. Dzieli napis na tablicę według podanego separatora
  3. Skleja tablicę w napis
  4. Usuwa przecinki z napisu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Dzieli napis na tablicę według podanego separatora

Operacja odwrotna to implode.

Ćwicz w trenerze →

28

Pętla foreach ($oceny as $klucz => $wartosc) pozwala odczytać:

  1. Elementy w kolejności odwrotnej
  2. Jednocześnie klucz i wartość każdego elementu tablicy
  3. Wyłącznie wartości
  4. Wyłącznie klucze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Jednocześnie klucz i wartość każdego elementu tablicy

Bez części $klucz => pętla zwraca same wartości.

Ćwicz w trenerze →

29

Tablica asocjacyjna w PHP przechowuje wartości pod:

  1. Wyłącznie kolejnymi numerami od zera
  2. Adresami pamięci
  3. Nazwami zmiennych
  4. Kluczami tekstowymi nadanymi przez programistę
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Kluczami tekstowymi nadanymi przez programistę

Zapis to $osoba['imie'] = 'Ala';.

Ćwicz w trenerze →

30

Czym różni się require od include w PHP?

  1. Require działa tylko dla plików HTML
  2. Nie różnią się niczym
  3. Include wykonuje plik dwa razy
  4. Brak pliku przy require przerywa działanie skryptu, przy include daje tylko ostrzeżenie
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Brak pliku przy require przerywa działanie skryptu, przy include daje tylko ostrzeżenie

Do plików krytycznych, np. połączenia z bazą, używa się require.

Ćwicz w trenerze →

31

Funkcja isset($zmienna) zwróci fałsz, gdy zmienna:

  1. Ma wartość zero
  2. Nie istnieje albo ma wartość null
  3. Jest pustym napisem
  4. Jest tablicą pustą
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Nie istnieje albo ma wartość null

Dla zera i pustego napisu isset zwraca prawdę — inaczej niż empty.

Ćwicz w trenerze →

32

Dla $a = 0; funkcja empty($a) zwróci:

  1. Błąd
  2. Wartość null
  3. Fałsz, bo zmienna istnieje
  4. Prawdę, bo zero jest traktowane jako wartość pusta
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Prawdę, bo zero jest traktowane jako wartość pusta

empty uznaje za puste: 0, "0", pusty napis, null, false i pustą tablicę.

Ćwicz w trenerze →

33

Funkcja trim($tekst) usuwa:

  1. Wszystkie spacje w napisie
  2. Polskie znaki diakrytyczne
  3. Znaki specjalne HTML
  4. Białe znaki z początku i końca napisu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Białe znaki z początku i końca napisu

Stosuje się ją do danych z formularza przed zapisaniem do bazy.

Ćwicz w trenerze →

34

Funkcja strpos($tekst, 'a') zwraca fałsz, gdy znaku nie ma. Dlaczego wynik trzeba sprawdzać operatorem ===?

  1. Bo funkcja może zwrócić null
  2. Bo pozycja 0 też jest traktowana jak fałsz przy porównaniu luźnym
  3. Bo operator == nie działa na liczbach
  4. Bo funkcja zwraca napis
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Bo pozycja 0 też jest traktowana jak fałsz przy porównaniu luźnym

Znaleziony na pierwszej pozycji znak daje 0, a 0 == false jest prawdą.

Ćwicz w trenerze →

35

Funkcja date('Y-m-d') w PHP zwróci:

  1. Znacznik czasu w sekundach
  2. Bieżącą datę w formacie rok-miesiąc-dzień
  3. Datę w formacie amerykańskim
  4. Nazwę dnia tygodnia
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Bieżącą datę w formacie rok-miesiąc-dzień

Format Y-m-d jest tym samym, którego oczekuje kolumna typu DATE w MySQL.

Ćwicz w trenerze →

36

Funkcja filter_var($mail, FILTER_VALIDATE_EMAIL) służy do:

  1. Zapisania adresu w bazie
  2. Zaszyfrowania adresu
  3. Sprawdzenia, czy napis jest poprawnym adresem poczty
  4. Wysłania wiadomości
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Sprawdzenia, czy napis jest poprawnym adresem poczty

Zwraca sprawdzony adres albo false, więc wynik trzeba porównać operatorem ścisłym.

Ćwicz w trenerze →

37

Funkcja session_start() musi zostać wywołana:

  1. Na samym końcu skryptu
  2. Przed wysłaniem jakiejkolwiek treści do przeglądarki
  3. Dopiero po zalogowaniu użytkownika
  4. Wyłącznie w pliku konfiguracyjnym
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Przed wysłaniem jakiejkolwiek treści do przeglądarki

Sesja ustawia nagłówek z identyfikatorem, a nagłówków nie da się wysłać po treści strony.

Ćwicz w trenerze →

38

Funkcja header('Location: index.php') powoduje:

  1. Dodanie odnośnika na stronie
  2. Przekierowanie przeglądarki pod wskazany adres
  3. Wczytanie pliku do bieżącego skryptu
  4. Zmianę tytułu strony
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Przekierowanie przeglądarki pod wskazany adres

Po przekierowaniu należy wywołać exit, bo skrypt sam z siebie się nie zatrzyma.

Ćwicz w trenerze →

39

Tablica $_SESSION przechowuje dane:

  1. W bazie danych MySQL
  2. Na serwerze, powiązane z identyfikatorem sesji użytkownika
  3. W adresie URL
  4. W przeglądarce użytkownika
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Na serwerze, powiązane z identyfikatorem sesji użytkownika

Do przeglądarki trafia wyłącznie identyfikator sesji, zwykle w pliku cookie.

Ćwicz w trenerze →

40

Superglobalna tablica $_SERVER['REQUEST_METHOD'] pozwala sprawdzić:

  1. Nazwę przeglądarki
  2. Czy formularz wysłano metodą GET, czy POST
  3. Adres IP serwera
  4. Wersję PHP
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Czy formularz wysłano metodą GET, czy POST

Typowy wzorzec to wykonanie zapisu do bazy dopiero, gdy metoda to POST.

Ćwicz w trenerze →

41

W zapytaniu przygotowanym bind_param("si", $nazwa, $ilosc) ciąg "si" oznacza:

  1. Kolejność sortowania
  2. Typy parametrów: napis i liczba całkowita
  3. Nazwy kolumn tabeli
  4. Skrót od SQL injection
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Typy parametrów: napis i liczba całkowita

Litery to s napis, i liczba całkowita, d liczba zmiennoprzecinkowa, b dane binarne.

Ćwicz w trenerze →

42

Funkcja mysqli_num_rows($wynik) zwraca:

  1. Liczbę kolumn w tabeli
  2. Identyfikator ostatniego rekordu
  3. Czas wykonania zapytania
  4. Liczbę rekordów zwróconych przez zapytanie
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Liczbę rekordów zwróconych przez zapytanie

Liczbę wierszy zmienionych przez INSERT lub UPDATE daje mysqli_affected_rows.

Ćwicz w trenerze →

43

Funkcja password_hash($haslo, PASSWORD_DEFAULT):

  1. Szyfruje hasło z możliwością odszyfrowania
  2. Tworzy skrót hasła z losową solą, inny przy każdym wywołaniu
  3. Sprawdza poprawność hasła
  4. Zwraca hasło zapisane wspak
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Tworzy skrót hasła z losową solą, inny przy każdym wywołaniu

Do porównania hasła z zapisanym skrótem służy password_verify.

Ćwicz w trenerze →

44

Dlaczego skrótu hasła nie porównuje się operatorem równości z wynikiem ponownego password_hash?

  1. Bo skrót jest za długi
  2. Bo każde wywołanie używa innej soli i daje inny skrót
  3. Bo funkcja zwraca liczbę
  4. Bo operator równości nie działa na napisach
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Bo każde wywołanie używa innej soli i daje inny skrót

password_verify sam wyciąga sól z zapisanego skrótu i przelicza porównanie.

Ćwicz w trenerze →

45

Operator ?? w PHP zwraca:

  1. Zawsze wartość z prawej strony
  2. Prawdę, gdy obie wartości są równe
  3. Wartość z lewej strony, chyba że jest ona null — wtedy wartość z prawej
  4. Resztę z dzielenia
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Wartość z lewej strony, chyba że jest ona null — wtedy wartość z prawej

To skrót na wartość domyślną: $strona = $_GET['s'] ?? 1;.

Ćwicz w trenerze →

46

Wynikiem operacji 17 % 5 jest:

  1. 3
  2. 12
  3. 2
  4. 3.4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 2

Procent to reszta z dzielenia — działa tak samo w PHP i w JavaScripcie.

Ćwicz w trenerze →

47

Funkcja w PHP zadeklarowana jako function suma($a, $b = 10) wywołana jako suma(5) zwróci:

  1. Błąd braku argumentu
  2. 5
  3. 15, bo drugi parametr przyjmie wartość domyślną
  4. null
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 15, bo drugi parametr przyjmie wartość domyślną

Parametry z wartością domyślną muszą stać na końcu listy.

Ćwicz w trenerze →

48

Zmienna zadeklarowana wewnątrz funkcji PHP jest domyślnie:

  1. Widoczna w całym skrypcie
  2. Zapisywana w sesji
  3. Zapisywana w tablicy globalnej
  4. Widoczna wyłącznie w tej funkcji
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Widoczna wyłącznie w tej funkcji

Dostęp do zmiennej spoza funkcji wymaga słowa global albo przekazania jej jako parametru.

Ćwicz w trenerze →

49

Która deklaracja tworzy w JavaScripcie zmienną, której wartości nie da się później podmienić?

  1. let
  2. var
  3. final
  4. const
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. const

Zawartość tablicy zadeklarowanej przez const nadal można zmieniać — chroniona jest sama referencja.

Ćwicz w trenerze →

50

Czym różni się let od var w JavaScripcie?

  1. var nie pozwala zmieniać wartości
  2. let obowiązuje w bloku, var w całej funkcji
  3. Nie różnią się niczym
  4. let działa tylko w pętlach
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. let obowiązuje w bloku, var w całej funkcji

Dlatego zmienna licznika pętli zadeklarowana przez let nie wycieka poza tę pętlę.

Ćwicz w trenerze →

51

Co zwróci wyrażenie typeof null w JavaScripcie?

  1. "boolean"
  2. "object"
  3. "null"
  4. "undefined"
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. "object"

To zaszłość z pierwszej wersji języka, zachowana dla zgodności wstecznej.

Ćwicz w trenerze →

52

Wynikiem parseInt("12ab") w JavaScripcie jest:

  1. Napis "12"
  2. Liczba 12
  3. Liczba 0
  4. Wartość NaN
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Liczba 12

Funkcja czyta znaki od początku, dopóki są cyframi, i odrzuca resztę.

Ćwicz w trenerze →

53

Wartość NaN w JavaScripcie oznacza:

  1. Pustą tablicę
  2. Wynik działania, którego nie da się przedstawić jako liczba
  3. Zmienną niezadeklarowaną
  4. Wartość zero
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Wynik działania, którego nie da się przedstawić jako liczba

Sprawdza się ją funkcją isNaN albo Number.isNaN, bo NaN nie równa się samej sobie.

Ćwicz w trenerze →

54

Wyrażenie Math.floor(Math.random() * 6) + 1 zwróci liczbę całkowitą z zakresu:

  1. Od 0 do 5
  2. Od 1 do 6
  3. Od 0 do 6
  4. Od 1 do 5
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Od 1 do 6

Math.random daje wartość z przedziału od 0 włącznie do 1 wyłącznie.

Ćwicz w trenerze →

55

Metoda querySelector('.karta') zwraca:

  1. Tablicę nazw klas
  2. Pierwszy element pasujący do selektora
  3. Wszystkie elementy o tej klasie
  4. Element o identyfikatorze karta
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Pierwszy element pasujący do selektora

Komplet dopasowań zwraca querySelectorAll.

Ćwicz w trenerze →

56

Metoda classList.toggle('aktywny') na elemencie:

  1. Zawsze usuwa klasę
  2. Dodaje klasę, jeśli jej nie ma, i usuwa, jeśli jest
  3. Zawsze dodaje klasę
  4. Zamienia wszystkie klasy na podaną
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Dodaje klasę, jeśli jej nie ma, i usuwa, jeśli jest

Bezpieczniejsza od ręcznego nadpisywania className, bo nie kasuje pozostałych klas.

Ćwicz w trenerze →

57

Aby odczytać tekst wpisany przez użytkownika w polu formularza, w JavaScripcie sięga się po właściwość:

  1. innerHTML
  2. textContent
  3. value
  4. content
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. value

innerHTML zwróciłby znaczniki wnętrza elementu, a pole input nie ma wnętrza.

Ćwicz w trenerze →

58

Metoda document.createElement('li'):

  1. Od razu dodaje element na końcu strony
  2. Usuwa element li
  3. Wyszukuje istniejący element li
  4. Tworzy nowy element w pamięci, ale nie umieszcza go jeszcze na stronie
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Tworzy nowy element w pamięci, ale nie umieszcza go jeszcze na stronie

Element trzeba jeszcze dołączyć, np. metodą appendChild.

Ćwicz w trenerze →

59

We wnętrzu funkcji obsługującej zdarzenie właściwość event.target wskazuje:

  1. Element, do którego podpięto nasłuchiwanie
  2. Element, na którym zdarzenie faktycznie wystąpiło
  3. Poprzednio kliknięty element
  4. Cały dokument
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Element, na którym zdarzenie faktycznie wystąpiło

Przy delegacji zdarzeń różni się od event.currentTarget, które wskazuje element z nasłuchem.

Ćwicz w trenerze →

60

Zdarzenie submit podpina się do:

  1. Całego dokumentu
  2. Elementu formularza
  3. Przycisku wysyłającego
  4. Pola tekstowego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Elementu formularza

Dzięki temu obsłużone zostanie także zatwierdzenie formularza klawiszem Enter.

Ćwicz w trenerze →

61

Funkcja setTimeout(f, 2000) wykona funkcję f:

  1. Co dwie sekundy, w pętli
  2. Po dwóch tysiącach sekund
  3. Jeden raz, po dwóch sekundach
  4. Natychmiast, dwa tysiące razy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Jeden raz, po dwóch sekundach

Cykliczne powtarzanie zapewnia setInterval, zatrzymywane przez clearInterval.

Ćwicz w trenerze →

62

Metoda JSON.stringify(obiekt):

  1. Zamienia napis JSON na obiekt
  2. Zapisuje obiekt w bazie danych
  3. Sprawdza poprawność obiektu
  4. Zamienia obiekt JavaScript na napis w formacie JSON
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zamienia obiekt JavaScript na napis w formacie JSON

Operacja odwrotna to JSON.parse — potrzebna np. przy odczycie z localStorage.

Ćwicz w trenerze →

63

Czym różni się sessionStorage od localStorage?

  1. Nie różnią się niczym
  2. sessionStorage znika po zamknięciu karty, localStorage zostaje
  3. localStorage ma mniejszy limit pojemności
  4. sessionStorage jest zapisywany na serwerze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. sessionStorage znika po zamknięciu karty, localStorage zostaje

Oba przechowują wyłącznie napisy, więc obiekty trzeba przepuścić przez JSON.

Ćwicz w trenerze →

64

Metoda map wywołana na tablicy:

  1. Modyfikuje tablicę pierwotną
  2. Zwraca nową tablicę z wynikami działania na każdym elemencie
  3. Sortuje tablicę
  4. Zwraca pojedynczą wartość
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zwraca nową tablicę z wynikami działania na każdym elemencie

Do zsumowania elementów do jednej wartości służy reduce.

Ćwicz w trenerze →

65

Czym różni się slice od splice na tablicy?

  1. Obie usuwają elementy
  2. slice zwraca wycinek i nie zmienia tablicy, splice modyfikuje ją w miejscu
  3. slice modyfikuje tablicę, splice nie
  4. Obie zwracają pojedynczy element
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. slice zwraca wycinek i nie zmienia tablicy, splice modyfikuje ją w miejscu

splice potrafi też wstawiać elementy w środek tablicy.

Ćwicz w trenerze →

66

Metoda includes('kot') na tablicy zwraca:

  1. Pozycję elementu
  2. Wartość logiczną informującą, czy element występuje
  3. Liczbę wystąpień
  4. Nową tablicę bez tego elementu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Wartość logiczną informującą, czy element występuje

Pozycję zwraca indexOf, dając −1, gdy elementu nie ma.

Ćwicz w trenerze →

67

Zapis `Witaj, ${imie}!` w JavaScripcie to:

  1. Odwołanie do elementu DOM
  2. Szablon napisu, w którym wyrażenie w klamrach zostanie podstawione
  3. Komentarz wielolinijkowy
  4. Wyrażenie regularne
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Szablon napisu, w którym wyrażenie w klamrach zostanie podstawione

Szablon zapisuje się w odwrotnych apostrofach i może obejmować wiele linii.

Ćwicz w trenerze →

68

Funkcja strzałkowa (a, b) => a + b jest odpowiednikiem:

  1. Deklaracji dwóch zmiennych
  2. Pętli po dwóch elementach
  3. Funkcji zwracającej sumę argumentów
  4. Porównania dwóch wartości
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Funkcji zwracającej sumę argumentów

Przy zapisie bez klamer wynik wyrażenia jest zwracany automatycznie.

Ćwicz w trenerze →

69

Zdarzenie DOMContentLoaded zachodzi, gdy:

  1. Strona zostanie w pełni wczytana razem z grafiką
  2. Użytkownik opuści stronę
  3. Skrypt zgłosi błąd
  4. Przeglądarka zbuduje drzewo dokumentu, jeszcze przed wczytaniem wszystkich obrazów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Przeglądarka zbuduje drzewo dokumentu, jeszcze przed wczytaniem wszystkich obrazów

Skrypt umieszczony w head bez tego zdarzenia nie znajdzie elementów strony.

Ćwicz w trenerze →

70

Dlaczego skrypt operujący na elementach strony umieszcza się zwykle przed zamknięciem znacznika body?

  1. Bo skrypty w head nie mają dostępu do zmiennych
  2. Bo elementy muszą już istnieć w drzewie dokumentu, gdy skrypt się wykona
  3. Bo tylko tam działa JavaScript
  4. Bo w sekcji head skrypty są blokowane
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Bo elementy muszą już istnieć w drzewie dokumentu, gdy skrypt się wykona

Alternatywą jest atrybut defer przy dołączaniu skryptu w sekcji head.

Ćwicz w trenerze →

71

Protokół HTTPS w odróżnieniu od HTTP:

  1. Jest szybszy
  2. Działa wyłącznie w sieci lokalnej
  3. Nie wymaga serwera
  4. Szyfruje przesyłane dane certyfikatem TLS
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Szyfruje przesyłane dane certyfikatem TLS

Bez HTTPS hasło z formularza wędruje przez sieć czystym tekstem.

Ćwicz w trenerze →

72

Kod odpowiedzi HTTP 500 oznacza:

  1. Nieznaleziony zasób
  2. Błąd po stronie serwera
  3. Brak uprawnień
  4. Poprawnie zrealizowane żądanie
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Błąd po stronie serwera

Kody z zakresu 400 wskazują na błąd żądania, z zakresu 500 na błąd serwera.

Ćwicz w trenerze →

73

Kod odpowiedzi HTTP 403 oznacza:

  1. Zasób nie istnieje
  2. Żądanie wykonane poprawnie
  3. Przekierowanie na inny adres
  4. Serwer zrozumiał żądanie, ale odmawia dostępu do zasobu
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Serwer zrozumiał żądanie, ale odmawia dostępu do zasobu

Odpowiedź 401 mówi o braku uwierzytelnienia, 403 o braku uprawnień mimo zalogowania.

Ćwicz w trenerze →

74

Atak typu XSS polega na:

  1. Przeciążeniu serwera żądaniami
  2. Podsłuchaniu ruchu sieciowego
  3. Odgadnięciu hasła metodą siłową
  4. Wstrzyknięciu na stronę obcego skryptu wykonywanego w przeglądarce innego użytkownika
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Wstrzyknięciu na stronę obcego skryptu wykonywanego w przeglądarce innego użytkownika

Podstawową obroną jest kodowanie znaków specjalnych przy wypisywaniu danych użytkownika.

Ćwicz w trenerze →

75

Dlaczego walidacja formularza wyłącznie w JavaScripcie nie wystarcza?

  1. Bo JavaScript nie obsługuje formularzy
  2. Bo przeglądarki różnie interpretują skrypty
  3. Bo walidacja w przeglądarce jest zbyt wolna
  4. Bo użytkownik może wyłączyć skrypty albo wysłać żądanie z pominięciem strony
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Bo użytkownik może wyłączyć skrypty albo wysłać żądanie z pominięciem strony

Walidacja po stronie klienta poprawia wygodę, ale zabezpiecza dopiero ta na serwerze.

Ćwicz w trenerze →

76

Serwer Apache w pakiecie XAMPP odpowiada za:

  1. Przechowywanie danych w tabelach
  2. Edycję kodu źródłowego
  3. Obróbkę grafiki
  4. Obsługę żądań HTTP i uruchamianie skryptów PHP
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Obsługę żądań HTTP i uruchamianie skryptów PHP

Za dane odpowiada MySQL lub MariaDB, uruchamiany jako osobna usługa.

Ćwicz w trenerze →

77

Pliki projektu w XAMPP umieszcza się domyślnie w katalogu:

  1. bin
  2. mysql
  3. tmp
  4. htdocs
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. htdocs

Dopiero stamtąd serwer udostępnia je pod adresem http://localhost.

Ćwicz w trenerze →

78

Framework w programowaniu to:

  1. Program do edycji kodu
  2. Serwer bazy danych
  3. Format zapisu danych
  4. Gotowy szkielet aplikacji narzucający strukturę i dostarczający typowe mechanizmy
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Gotowy szkielet aplikacji narzucający strukturę i dostarczający typowe mechanizmy

Biblioteka dostarcza funkcje, z których korzystasz; framework narzuca też sposób budowy aplikacji.

Ćwicz w trenerze →

79

Mechanizm AJAX pozwala:

  1. Przyspieszyć wczytywanie obrazów
  2. Zaszyfrować formularz
  3. Uruchomić PHP w przeglądarce
  4. Pobrać dane z serwera bez przeładowania całej strony
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Pobrać dane z serwera bez przeładowania całej strony

We współczesnym kodzie realizuje się to funkcją fetch.

Ćwicz w trenerze →

80

Plik cookie jest przechowywany:

  1. W pamięci karty graficznej
  2. W bazie danych
  3. W przeglądarce użytkownika i wysyłany do serwera przy każdym żądaniu
  4. Wyłącznie na serwerze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. W przeglądarce użytkownika i wysyłany do serwera przy każdym żądaniu

Dlatego w ciasteczku nie umieszcza się danych, których użytkownik nie powinien móc podejrzeć ani podmienić.

Ćwicz w trenerze →

81CKE · Informator INF.03 · zadanie 20

Co wyświetli JavaScript word='Słoń'; document.write(word.toLowerCase() == 'słoń');?

  1. false
  2. true
  3. słoń
  4. Słoń
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. true

toLowerCase zmienia napis na małe litery, więc porównanie jest prawdziwe.

Ćwicz w trenerze →

82CKE · Informator INF.03 · zadanie 21

Co wyświetli PHP function suma($n){ if($n<1)return 0; return $n+suma($n-1); } echo suma(5);?

  1. 0
  2. 10
  3. 14
  4. 15
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 15

Rekurencja sumuje 5+4+3+2+1, czyli 15.

Ćwicz w trenerze →

83CKE · Informator INF.03 · zadanie 22

Jaki typ wypisze PHP po wykonaniu echo gettype(13.0);?

  1. string
  2. boolean
  3. integer
  4. double
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. double

Liczba z częścią dziesiętną jest w PHP typu double.

Ćwicz w trenerze →

84Zakres CKE · INF.03.5

Informacje o pliku przesłanym formularzem PHP są dostępne w tablicy:

  1. $_POST
  2. $_FILES
  3. $_ENV
  4. $_SERVER
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. $_FILES

$_FILES zawiera między innymi nazwę, typ, rozmiar i plik tymczasowy.

Ćwicz w trenerze →

85Zakres CKE · INF.03.5

Funkcja PHP move_uploaded_file służy do:

  1. Zmiany nazwy dowolnego pliku zdalnego
  2. Pobrania pliku przez HTTP
  3. Spakowania pliku ZIP
  4. Przeniesienia poprawnie przesłanego pliku z katalogu tymczasowego
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Przeniesienia poprawnie przesłanego pliku z katalogu tymczasowego

Po wysłaniu plik trzeba przenieść do docelowej, kontrolowanej lokalizacji.

Ćwicz w trenerze →

86Zakres CKE · INF.03.5

Funkcję PHP setcookie należy wywołać:

  1. Po zamknięciu znacznika html
  2. Przed wysłaniem treści odpowiedzi HTML
  3. Wyłącznie po session_destroy
  4. W dowolnym miejscu bez ograniczeń
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Przed wysłaniem treści odpowiedzi HTML

Ciasteczko jest wysyłane w nagłówku HTTP, więc musi poprzedzać treść.

Ćwicz w trenerze →

87Zakres CKE · INF.03.5

Wywołanie session_start() w PHP powinno nastąpić:

  1. Dopiero po session_destroy
  2. Tylko na stronie logowania
  3. Przed odczytem lub zapisem $_SESSION i przed wysłaniem treści
  4. Po każdym zapytaniu SQL
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Przed odczytem lub zapisem $_SESSION i przed wysłaniem treści

session_start otwiera lub wznawia sesję i ustawia jej nagłówki.

Ćwicz w trenerze →

88Zakres CKE · INF.03.5

Po wykonaniu w PHP header('Location: panel.php') zwykle należy użyć exit, aby:

  1. Zamknąć połączenie przeglądarki
  2. Zatrzymać dalsze wykonywanie bieżącego skryptu
  3. Usunąć sesję użytkownika
  4. Wyczyścić nagłówki HTTP
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zatrzymać dalsze wykonywanie bieżącego skryptu

Przekierowanie nie zatrzymuje automatycznie całej logiki skryptu.

Ćwicz w trenerze →

89Zakres CKE · INF.03.5

Wywołanie filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL) służy do:

  1. Usunięcia adresu z bazy
  2. Zaszyfrowania adresu
  3. Wysłania wiadomości
  4. Sprawdzenia, czy przesłana wartość ma poprawny format adresu e-mail
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Sprawdzenia, czy przesłana wartość ma poprawny format adresu e-mail

Filtr walidacyjny zwróci wartość albo false przy niepoprawnym formacie.

Ćwicz w trenerze →

90Zakres CKE · INF.03.5

Funkcja PHP password_verify porównuje:

  1. Dwa jawne hasła
  2. Token sesji z adresem IP
  3. Dwa pliki konfiguracyjne
  4. Hasło jawne z hashem utworzonym przez password_hash
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Hasło jawne z hashem utworzonym przez password_hash

Funkcja zna format hasha i bezpiecznie weryfikuje hasło.

Ćwicz w trenerze →

91Zakres CKE · INF.03.5

W PDO zapis :email w zapytaniu przygotowanym jest:

  1. Operatorem porównania
  2. Nazwanym parametrem, do którego wiąże się wartość
  3. Komentarzem SQL
  4. Nazwą tabeli tymczasowej
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Nazwanym parametrem, do którego wiąże się wartość

Parametr oddziela dane użytkownika od składni SQL.

Ćwicz w trenerze →

92Zakres CKE · INF.03.5

Funkcja PHP json_encode($dane):

  1. Pobiera JSON z serwera
  2. Waliduje dokument HTML
  3. Szyfruje tablicę
  4. Zamienia wartość PHP na tekst JSON
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Zamienia wartość PHP na tekst JSON

JSON jest tekstowym formatem wymiany danych.

Ćwicz w trenerze →

93Zakres CKE · INF.03.5

Drugi argument true w json_decode($tekst, true) powoduje zwrócenie obiektów JSON jako:

  1. Łańcuchów znaków
  2. Zasobów plikowych
  3. Tablic asocjacyjnych
  4. Obiektów DOM
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Tablic asocjacyjnych

Bez true obiekty JSON są domyślnie instancjami stdClass.

Ćwicz w trenerze →

94Zakres CKE · INF.03.5

Metoda JavaScript reduce służy do:

  1. Usunięcia ostatniego elementu
  2. Znalezienia indeksu bez warunku
  3. Posortowania tablicy
  4. Sprowadzenia elementów tablicy do jednej wartości akumulatora
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Sprowadzenia elementów tablicy do jednej wartości akumulatora

Reduce wywołuje funkcję dla kolejnych elementów i przenosi akumulator.

Ćwicz w trenerze →

95Zakres CKE · INF.03.5

Metoda tablicy find zwraca:

  1. Wszystkie elementy spełniające warunek
  2. Nową posortowaną tablicę
  3. Pierwszy element spełniający warunek
  4. Liczbę elementów
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Pierwszy element spełniający warunek

Do zwrócenia wszystkich pasujących elementów służy filter.

Ćwicz w trenerze →

96Zakres CKE · INF.03.5

Metoda tablicy some zwraca true, gdy:

  1. Tablica jest pusta
  2. Co najmniej jeden element spełnia warunek
  3. Pierwszy element jest liczbą
  4. Każdy element spełnia warunek
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Co najmniej jeden element spełnia warunek

every wymaga spełnienia warunku przez wszystkie elementy.

Ćwicz w trenerze →

97Zakres CKE · INF.03.5

Wywołanie document.querySelectorAll('.karta') zwraca:

  1. Tylko pierwszy pasujący element
  2. Listę wszystkich elementów pasujących do selektora
  3. Tekst pierwszego elementu
  4. Tablicę nazw klas
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Listę wszystkich elementów pasujących do selektora

querySelector zwraca pierwszy element, querySelectorAll kolekcję wszystkich.

Ćwicz w trenerze →

98Zakres CKE · INF.03.5

Metoda DOM element.closest('.panel') szuka:

  1. Najbliższego dziecka elementu
  2. Wszystkich sąsiadów
  3. Najbliższego przodka lub samego elementu pasującego do selektora
  4. Elementu tylko po identyfikatorze
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. Najbliższego przodka lub samego elementu pasującego do selektora

closest idzie w górę drzewa DOM.

Ćwicz w trenerze →

99Zakres CKE · INF.03.5

Dla elementu z atrybutem data-user-id="7" JavaScript odczyta wartość przez:

  1. element.data.user-id
  2. element.attributes.userId
  3. element.dataset.userId
  4. element.user.id
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. element.dataset.userId

dataset zamienia zapis kebab-case na camelCase.

Ćwicz w trenerze →

100Zakres CKE · INF.03.5

Funkcja fetch() w JavaScripcie zwraca:

  1. Gotowy tekst odpowiedzi synchronicznie
  2. Obietnicę (Promise)
  3. Połączenie z bazą MySQL
  4. Element DOM
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Obietnicę (Promise)

Na wynik oczekuje się przez then albo await.

Ćwicz w trenerze →

101Zakres CKE · INF.03.5

Funkcja oznaczona słowem async zawsze zwraca:

  1. Wyłącznie string
  2. Element HTML
  3. Wartość undefined
  4. Promise
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. Promise

Nawet zwykła zwrócona wartość zostaje opakowana w spełnioną obietnicę.

Ćwicz w trenerze →

102Zakres CKE · INF.03.5

Delegowanie zdarzeń polega na:

  1. Dodaniu osobnego timera do każdego elementu
  2. Obsłudze zdarzeń potomków przez jeden nasłuch na ich wspólnym przodku
  3. Wyłączeniu propagacji wszystkich zdarzeń
  4. Kopiowaniu funkcji do atrybutu onclick
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Obsłudze zdarzeń potomków przez jeden nasłuch na ich wspólnym przodku

Mechanizm wykorzystuje propagację zdarzeń i działa także dla dynamicznych potomków.

Ćwicz w trenerze →

103Zakres CKE · INF.03.5

Metoda event.stopPropagation():

  1. Usuwa element źródłowy
  2. Zatrzymuje dalsze przechodzenie zdarzenia przez drzewo DOM
  3. Kończy cały skrypt
  4. Blokuje domyślną akcję przeglądarki
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. Zatrzymuje dalsze przechodzenie zdarzenia przez drzewo DOM

Domyślne zachowanie blokuje preventDefault, a propagację stopPropagation.

Ćwicz w trenerze →

Zadania rachunkowe i kodowe (37)

Każde zadanie ma 25 wariantów z innymi liczbami. Poniżej po jednym przykładzie — w trenerze wylosujesz kolejne, aż opanujesz sam mechanizm.

104Zakres CKE · INF.03.5

Co wypisze JavaScript console.log(26 + 6 * 6);?

  1. 64
  2. 62
  3. 61
  4. 63
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 62

Mnożenie wykonuje się przed dodawaniem, dlatego wynik to 62.

Ćwicz w trenerze →

105Zakres CKE · INF.03.5

Co wypisze JavaScript console.log(89 % 7);?

  1. 8
  2. 5
  3. 6
  4. 7
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 5

Operator % zwraca resztę z dzielenia, tutaj 5.

Ćwicz w trenerze →

106Zakres CKE · INF.03.5

Co wypisze kod let s=0; for(let i=1;i<=27;i++) s+=i; console.log(s);?

  1. 377
  2. 405
  3. 379
  4. 378
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 378

Pętla sumuje liczby od 1 do 27, więc otrzymuje 378.

Ćwicz w trenerze →

107Zakres CKE · INF.03.5

Jaki napis zwróci [25,27,29].map(x=>x+1).join(',')?

  1. 30,28,26
  2. 26,28,30
  3. 25,27,29
  4. 27,29,31
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 26,28,30

map dodaje 1 do każdego elementu, a join łączy wyniki przecinkami.

Ćwicz w trenerze →

108Zakres CKE · INF.03.5

Co wypisze const s='INF03-124'; console.log(s.slice(6));?

  1. -124
  2. 24
  3. 124
  4. INF03
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 124

Indeks 6 wskazuje pierwszy znak liczby po napisie „INF03-”.

Ćwicz w trenerze →

109Zakres CKE · INF.03.5

Co wypisze let x=35; console.log(x%2===0 ? 'P' : 'N');?

  1. false
  2. true
  3. N
  4. P
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. N

Warunek sprawdza parzystość liczby 35; wybrana zostaje gałąź „N”.

Ćwicz w trenerze →

110Zakres CKE · INF.03.5

Co wypisze PHP echo 27 + 2 * 2;?

  1. 30
  2. 33
  3. 32
  4. 31
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 31

PHP wykonuje mnożenie przed dodawaniem, więc wynik to 31.

Ćwicz w trenerze →

111Zakres CKE · INF.03.5

Co wypisze PHP echo 115 % 3;?

  1. 2
  2. 3
  3. 1
  4. 4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 1

Operator modulo zwraca resztę z dzielenia: 1.

Ćwicz w trenerze →

112Zakres CKE · INF.03.5

Co wypisze PHP $s=0; for($i=1;$i<=28;$i++) $s+=$i; echo $s;?

  1. 434
  2. 406
  3. 405
  4. 407
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 406

Pętla dodaje wszystkie liczby od 1 do 28, czyli 406.

Ćwicz w trenerze →

113Zakres CKE · INF.03.5

Co wypisze PHP $t=[26,29,27,32]; echo count($t).'-'.max($t);?

  1. 32-4
  2. 4-32
  3. 114
  4. 4-26
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 4-32

Tablica ma 4 elementy, a jej maksimum to 32.

Ćwicz w trenerze →

114Zakres CKE · INF.03.5

Co wypisze PHP $a='INF'; $b=224; echo $a.'.'.$b;?

  1. INF224
  2. 224.INF
  3. INF.224
  4. INF+$b
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. INF.224

Kropka w PHP łączy napisy, dlatego powstaje „INF.224”.

Ćwicz w trenerze →

115Zakres CKE · INF.03.5

Co wypisze PHP function f($x){return $x*2+5;} echo f(3);?

  1. 12
  2. 11
  3. 8
  4. 6
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 11

Funkcja mnoży 3 przez 2 i dodaje 5, więc zwraca 11.

Ćwicz w trenerze →

116Zakres CKE · INF.03.5

Co wypisze JavaScript const t=[34,68,102,136]; console.log(t[0]);?

  1. 68
  2. 136
  3. 102
  4. 34
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 34

Indeksy tablicy zaczynają się od zera, więc element t[0] ma wartość 34.

Ćwicz w trenerze →

117Zakres CKE · INF.03.5 · wariant autorski

Zastosowano postinkrementację. Co wypisze let x=334; let y=x++; console.log(x+','+y);?

  1. 334,335
  2. 335,334
  3. 335,335
  4. 334,334
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 335,334

Postinkrementacja najpierw przypisuje starą wartość do y, a potem zwiększa x.

Ćwicz w trenerze →

118Zakres CKE · INF.03.5 · wariant autorski

Zastosowano preinkrementację. Co wypisze let x=334; let y=++x; console.log(x+','+y);?

  1. 334,335
  2. 335,335
  3. 334,334
  4. 335,334
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 335,335

Preinkrementacja zwiększa x przed przypisaniem, więc obie zmienne mają wartość 335.

Ćwicz w trenerze →

119Zakres CKE · INF.03.5 · wariant autorski

Co wypisze const t=[25,27,29]; t.push(31); console.log(t.length);?

  1. 3
  2. 31
  3. 5
  4. 4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 4

push dodaje jeden element do tablicy trzy-elementowej, więc długość wynosi 4.

Ćwicz w trenerze →

120Zakres CKE · INF.03.5 · wariant autorski

Co wypisze const t=[25,27,29,31]; console.log(t.pop());?

  1. 27
  2. 29
  3. 25
  4. 31
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 31

pop usuwa i zwraca ostatni element tablicy, czyli 31.

Ćwicz w trenerze →

121Zakres CKE · INF.03.5 · wariant autorski

Co wypisze [26,28,30,32].reduce((a,b)=>a+b,0)?

  1. 90
  2. 116
  3. 4
  4. 32
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 116

reduce dodaje kolejne elementy do akumulatora, otrzymując 116.

Ćwicz w trenerze →

122Zakres CKE · INF.03.5 · wariant autorski

Co wypisze [26,27,28,29].filter(x=>x%2===0).length?

  1. 1
  2. 2
  3. 3
  4. 4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 2

Wśród czterech kolejnych liczb dokładnie dwie są parzyste.

Ćwicz w trenerze →

123Zakres CKE · INF.03.5 · wariant autorski

Co wypisze console.log('INF03-xxxxxxxxxxxxxxxxxxxxxxxxx'.length);?

  1. 25
  2. 31
  3. 30
  4. 32
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 31

Właściwość length liczy wszystkie znaki napisu; wynik to 31.

Ćwicz w trenerze →

124Zakres CKE · INF.03.5 · wariant autorski

Co wypisze console.log('KOD124'.charAt(5));?

  1. 124
  2. 4
  3. K
  4. D
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 4

Indeksy znaków zaczynają się od zera; indeks 5 wskazuje ostatnią cyfrę napisu.

Ćwicz w trenerze →

125Zakres CKE · INF.03.5 · wariant autorski

Co wypisze Math.floor(92/7)?

  1. 15
  2. 14
  3. 13
  4. 12
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: C. 13

Math.floor zaokrągla iloraz w dół do liczby całkowitej: 13.

Ćwicz w trenerze →

126Zakres CKE · INF.03.5 · wariant autorski

Co wypisze Math.ceil(92/7)?

  1. 13
  2. 16
  3. 15
  4. 14
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 14

Math.ceil zaokrągla iloraz w górę do liczby całkowitej: 14.

Ćwicz w trenerze →

127Zakres CKE · INF.03.5 · wariant autorski

Co wypisze let p=1; for(let j=1;j<=3;j++) p*=(25+j); console.log(p);?

  1. 81
  2. 19657
  3. 75
  4. 19656
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 19656

Pętla mnoży kolejno 26, 27 i 28, otrzymując 19656.

Ćwicz w trenerze →

128Zakres CKE · INF.03.5 · wariant autorski

Co wypisze let x=29; console.log(x>=12 && x<=23);?

  1. undefined
  2. false
  3. true
  4. 29
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. false

Operator && wymaga spełnienia obu nierówności; wynikiem jest false.

Ćwicz w trenerze →

129Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $x=444; $y=$x++; echo $x.'-'.$y;?

  1. 444-444
  2. 445-444
  3. 444-445
  4. 445-445
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 445-444

Operator $x++ przypisuje do $y starą wartość, a następnie zwiększa $x.

Ćwicz w trenerze →

130Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $t=[27,30,33]; echo array_sum($t);?

  1. 3
  2. 33
  3. 63
  4. 90
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 90

array_sum dodaje wszystkie elementy tablicy, więc zwraca 90.

Ćwicz w trenerze →

131Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $t=[27,30,33]; array_push($t,36); echo count($t);?

  1. 3
  2. 5
  3. 36
  4. 4
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 4

Po dodaniu jednego elementu tablica ma cztery pozycje.

Ćwicz w trenerze →

132Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP echo implode('|',['INF24','SQL24','WWW24']);?

  1. INF24,SQL24,WWW24
  2. WWW24|SQL24|INF24
  3. INF24SQL24WWW24
  4. INF24|SQL24|WWW24
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. INF24|SQL24|WWW24

implode łączy elementy separatorem pionowej kreski.

Ćwicz w trenerze →

133Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $t=explode('-','html-css-js-php-24'); echo count($t);?

  1. 4
  2. 5
  3. 2
  4. 3
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 5

explode tworzy element przy każdym fragmencie rozdzielonym myślnikiem; powstaje 5 elementów.

Ćwicz w trenerze →

134Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP echo strlen('PHP-zzzzzzzzzzzzzzzzzzzzzzzzzz');?

  1. 26
  2. 31
  3. 29
  4. 30
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 30

strlen liczy znaki napisu; wynik to 30.

Ćwicz w trenerze →

135Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP echo substr('INF03-224',6);?

  1. -224
  2. 224
  3. 44
  4. INF03
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 224

substr od pozycji 6 zwraca część napisu znajdującą się po „INF03-”.

Ćwicz w trenerze →

136Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP echo round(204/7,2);?

  1. 29
  2. 30.14
  3. 30
  4. 29.14
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 29.14

round z argumentem 2 zaokrągla iloraz do dwóch miejsc po przecinku; PHP wypisze 29.14.

Ćwicz w trenerze →

137Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $p=1; foreach([26,27,28] as $v){$p*=$v;} echo $p;?

  1. 3
  2. 19656
  3. 81
  4. 19657
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 19656

Pętla foreach mnoży wszystkie trzy wartości, otrzymując 19656.

Ćwicz w trenerze →

138Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $x=29; $c=0; while($x>0){$x-=2; $c++;} echo $c;?

  1. 17
  2. 15
  3. 14
  4. 16
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 15

Każdy obrót zmniejsza x o 2; potrzeba 15 obrotów, aby x przestało być dodatnie.

Ćwicz w trenerze →

139Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP $u=['kod'=>'U24','punkty'=>84]; echo $u['punkty'];?

  1. U24
  2. 85
  3. 2
  4. 84
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D. 84

Klucz punkty wskazuje wartość 84.

Ćwicz w trenerze →

140Zakres CKE · INF.03.5 · wariant autorski

Co wypisze PHP echo str_replace('-','/','2026-09-25');?

  1. 25/09/2026
  2. 2026/09/25
  3. 2026.09.25
  4. 2026-09-25
Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: B. 2026/09/25

str_replace zamienia każdy myślnik na ukośnik.

Ćwicz w trenerze →

To dopiero część pisemna

Do certyfikatu trzeba też części praktycznej — i tam EasyINF robi różnicę.

Roadmapa od zera, 152 arkusze CKE z rozwiązaniami, warsztat, który sprawdza Twój kod krok po kroku, i próbny egzamin na 150 minut. Jedna platforma, płacisz raz.

Zobacz pełny kurs INF.03