Blog
Funciones de orden superior en Java Script
- octubre 30, 2015
- Publicado por: admin
- Categoría: Blog Java Script
Las funciones de orden superior en Java Script o cualquier otro lenguaje son aquellas que reciben o retornan otras funciones. Esta característica es incorporada frecuentemente en los lenguajes de programación funcional (paradigma funcional).
Tres funciones que cumplen con esta característica en Java Script son map, filter y reduce las cuales se utilizan para manipular listas, en este tutorial aprenderemos a utilizarlas con unos ejemplos muy sencillos.
¿Cómo usar las funciones de orden superior en Java Script?
La función map aplica una función a cada elemento de una lista y devuelve una nueva con el resultado de aplicar la función a cada elemento. Vamos a ver un ejemplo donde se aplica la raíz cuadrada a cada elemento de una lista:
[sourcecode language=”javascript”] // Aplica Math.sqrt(value) para cada elemento de un array.var numeros = [9, 16];
var resultado = numeros.map(Math.sqrt);
document.write(resultado);
[/sourcecode]
La función filter verifica que los elementos de una lista cumplan una determinada condición, devolviendo una lista con los elementos que cumplen esa condición. Vamos a ver un ejemplo donde se filtran los números impares de una lista:
[sourcecode language=”javascript”] // Se aplica la condición esPar para filtrar los números que no la cumplanvar numeros = [1, 2, 3, 4, 5, 6, 7];
function esPar(numero){
return numero % 2 == 0;
}
var resultado = numeros.filter(esPar);
document.write(resultado);
[/sourcecode]
La función reduce aplica una función a pares de elementos de una lista hasta dejarla en un único valor. En el siguiente ejemplo utilizamos la función reduce para sumar todos los números de una lista:
[sourcecode language=”javascript”] // Se aplica la suma() para sumar todos los números de la listavar numeros = [1, 2, 3, 4, 5, 6, 7];
function suma(numero1, numero2){
return numero1 + numero2;
}
var resultado = numeros.reduce(suma);
document.write(resultado);
[/sourcecode]
Bueno gente, hemos llegado al final de este tutorial espero que les haya servido. Ante cualquier problema no duden en dejar un comentario.