zpět k lekci

Filtrace podle rozsahu

důležitost: 4

Napište funkci filtrujPodleRozsahu(pole, a, b), která obdrží pole pole, najde prvky, jejichž hodnoty jsou vyšší nebo rovny a a nižší nebo rovny b a vrátí výsledek jako pole.

Funkce by neměla pole modifikovat. Měla by vrátit nové pole.

Příklad:

let pole = [5, 3, 8, 1];

let filtrovanéPole = filtrujPodleRozsahu(pole, 1, 4);

alert( filtrovanéPole ); // 3,1 (odpovídající hodnoty)

alert( pole ); // 5,3,8,1 (nezměněno)

Otevřít pískoviště s testy.

function filtrujPodleRozsahu(pole, a, b) {
  // závorky kolem výrazu jsou přidány pro lepší čitelnost
  return pole.filter(prvek => (a <= prvek && prvek <= b));
}

let testovacíPole = [5, 3, 8, 1];

let filtrovanéPole = filtrujPodleRozsahu(testovacíPole, 1, 4);

alert( filtrovanéPole ); // 3,1 (odpovídající hodnoty)

alert( testovacíPole ); // 5,3,8,1 (nezměněno)

Otevřít řešení s testy na pískovišti.