Назад к вопросам
Junior
80
questionbank

Что такое функция высшего порядка?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Функция высшего порядка (Higher-Order Function) — это функция, которая:

  1. Принимает одну или несколько других функций в качестве аргументов.
  2. Возвращает другую функцию как результат.

Такие функции позволяют абстрагироваться от конкретных действий, повышая гибкость и переиспользуемость кода.

Примеры в JavaScript: map, filter, reduce, setTimeout.

// Пример функции высшего порядка: Function as an argument
function applyOperation(x, y, operation) {
  return operation(x, y);
}

function add(a, b) {
  return a + b;
}

const result = applyOperation(5, 3, add); // Передаем функцию `add` как аргумент
console.log(result); // 8

// Пример функции высшего порядка: Returning a function
function multiplyBy(factor) {
  return function(number) {
    return number * factor;
  };
}

const multiplyByTwo = multiplyBy(2); // Возвращаем новую функцию
const value = multiplyByTwo(10); // Используем возвращенную функцию
console.log(value); // 20

Преимущества:

  • Улучшает читаемость и модульность кода.
  • Облегчает создание абстракций.
  • Способствует функциональному стилю программирования.