Функция высшего порядка принимает другую функцию как аргумент или возвращает функцию. Это позволяет передавать и комбинировать поведение.
Что такое функция высшего порядка? Приведите пример функции JavaScript, которая принимает или возвращает функцию.
Функция высшего порядка принимает другую функцию как аргумент или возвращает функцию. Это позволяет передавать и комбинировать поведение.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Функция высшего порядка принимает другую функцию как аргумент или возвращает функцию. Это позволяет передавать и комбинировать поведение.
function twice(fn, value) {
return fn(fn(value));
}
console.log(twice(x => x + 1, 3)); // 5
function multiplier(k) {
return x => x * k;
}
console.log(multiplier(3)(4)); // 12
twice принимает функцию, multiplier возвращает функцию с замыканием на k. Стандартные map, filter и reduce — примеры функций высшего порядка. Наличие callback само по себе не означает асинхронность: оба примера выполняются синхронно.