Higher-order function là gì?

Phrase Javascript

Higher-order function trong JavaScript là một loại hàm (function) đặc biệt chấp nhận các hàm như một đối số (argument) hoặc/và trả về (return) là hàm.

Ví dụ hàm map là một higher order function vì hàm map nhận một hàm làm đối số.


const double = n => n * 2
[1, 2, 3, 4].map(double) // [ 2, 4, 6, 8 ]

Ví dụ bên dưới hàm iReturnFunction là higher-order function vì nó trả về một hàm.


function iReturnFunction() {
  return function() { return 42 };
}
const myFunc = iReturnFunction();
myFunc(); // => 42

Learning English Everyday