Sobes.tech
Назад к задачам
Intern — Senior
29

Самодельная реализация функции filter

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Создайте свою версию функции filter, которая принимает два аргумента: массив и функцию‑обработчик.

 const filter = (arr, fn) => { };

Пример 1:

  • Вход: arr = [0,10,20,30], fn = function greaterThan10(n) { return n > 10; }
  • Выход: [20,30]
  • Пояснение: функция оставляет только те элементы, которые больше 10.

Пример 2:

  • Вход: arr = [1,2,3], fn = function firstIndex(n, i) { return i == 0; }
  • Выход: [1]
  • Пояснение: обработчик может получать индекс элемента; здесь оставляется элемент с индексом 0.

Пример 3:

  • Вход: arr = [-2,-1,0,1,2], fn = function plusOne(n) { return n + 1 }
  • Выход: [-2,0,1,2]
  • Пояснение: значения, приводящиеся к false (например, 0), отбрасываются.