May 31, 2023

Функции высшего порядка

Функции могут принимать другие функции в качестве аргументов, и они могут возвращать другие функции. Любые функции, которые действуют на другие функции, называются "функциями высшего порядка".

функции могут принимать другие функции в качестве аргументов встроенная функция setTimeout является классическим примером

function executeACallback(callback, arg) {
 // это вызовет функцию
 // с любым аргументом, который вы ей передадите
 return callback(arg)
}

const add2 = (num) => num + 2

console.log(executeACallback(add2, 3))
// => 5

функции также могут возвращать другие функции

function isGreaterThan (num1) {
 return num2 => num2 > num1
}

let isGreaterThan10 = isGreaterThan(10)
console.log(isGreaterThan10(11))
// => true
$ node jsbyexample.js
5
true

Подробнее

Далее: promises