¿El patrón "función de función de retorno" tiene un nombre en JavaScript?


14

Yo uso este patrón con bastante frecuencia en JavaScript. Aquí hay un ejemplo:

const comments = [
  { text: 'Hello', id: 1 },
  { text: 'World', id: 4 },
];

const byId = id => element => element.id === id;

const comment = comments.find(byId(1));

A veces, este patrón puede hacer que nuestro código sea legible y modular. ¿Cómo se llama este patrón?

Respuestas:


20

Se llaman funciones de orden superior.

Una función de orden superior es una función que puede tomar otra función como argumento, o que devuelve una función como resultado. - Funciones de orden superior en JavaScript por M. David Green


Y terminas con un cierre.
Thomas Junk

3
JavaScript es un lenguaje en el que todas las funciones son de primera clase. Lo que significa que puede pasarlos en variables como cualquier otro valor. Un cierre es una función que tiene acceso al "ámbito léxico" adjunto en el que se definió. Funciona un poco como la forma en que los métodos de un objeto tienen acceso a las variables de estado de los objetos.
candied_orange

3
En este caso particular, está cursando 2 args a 1.
user949300
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.