Przejdź do treści głównej
INF.03Pytanie #4 z 1558js-funkcje-i-struktury-danych

Jaki będzie wynik wykonania poniższego kodu JavaScript?

javascript
const arr = [1, 2, 3, 4, 5];
const result = arr.filter(x => x % 2 === 0)
                  .map(x => x * 2);
console.log(result);
Opcje odpowiedzi:
A
[2, 4, 6, 8, 10]
B
[4, 8]
Prawidłowa
C
[2, 4]
D
[1, 3, 5]
Reklama

Wyjaśnienie i uzasadnienie dydaktyczne

Poprawna odpowiedź: B ([4, 8])

Przeanalizujmy działanie łańcucha metod tablicowych w JavaScript:

  1. arr.filter(x => x % 2 === 0) wybiera z tablicy [1, 2, 3, 4, 5] wyłącznie liczby parzyste (dające resztę 0 z dzielenia przez 2), co daje nową tablicę [2, 4].
  2. .map(x => x * 2) przekształca każdy element tablicy przefiltrowanej, mnożąc go przez 2: 2 \times 2 = 4 oraz 4 \times 2 = 8, tworząc tablicę wynikową [4, 8].

Dlaczego pozostałe opcje są nieprawidłowe?

  • A: Tablica [2, 4, 6, 8, 10] byłaby wynikiem samego map(), bez uprzedniego odfiltrowania liczb nieparzystych.
  • C: Tablica [2, 4] to wynik po samym etapie filter(), przed wykonaniem mnożenia w map().
  • D: Tablica [1, 3, 5] zawiera liczby nieparzyste, które zostały odrzucone przez warunek x % 2 === 0.

Chcesz poćwiczyć całą kwalifikację INF.03?

Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.

Rozwiąż w Quizie

Pojęcia z tego pytania

Cały słownik INF03
Reklama

Podobne pytania z działu „Js funkcje i struktury danych”

Ten sam obszar materiału z kwalifikacji INF.03. W całej bazie znajdziesz 42 pytań z tego działu.