Lodash es una biblioteca de JavaScript que ofrece funciones de utilidad para tareas de programación típicas utilizando el modelo de programación funcional.
La biblioteca, que funciona con navegadores web y Node.js, puede modificar y convertir datos, realizar operaciones asincrónicas y más.
Aprenda a usar lodash para manipular matrices, cadenas y objetos, y descubra sus características avanzadas, como la composición de funciones.
Primeros pasos con Lodash
Puede agregar lodash a su aplicación de una de dos maneras: usando una red de entrega de contenido (CDN) o instalándola usando npm o yarn.
Para usar lodash directamente en el navegador, copie el enlace CDN de lodash a continuación e insértelo en la sección de encabezado de su archivo HTML:
<guionorigen=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
tipo="texto/javascript">guion>
Con este enfoque, puede ejecutar scripts usando lodash en el cuerpo de su HTML.
Para usar lodash en un proyecto de Node.js, debe instalarlo en el directorio de su proyecto. Puede usar npm o yarn para hacerlo:
instalación npm --save lodash
# o
hilo añadir lodash
Ahora puede usar lodash solicitándolo en su archivo JavaScript:
// Requerir la biblioteca lodash
constante _ = requerir("lodash");
// Usando el método _.sum
constante números = [10, 20, 30, 40, 50];
constante suma = _.suma (números);
consola.log (suma);
Para ejecutar su archivo JavaScript, ingrese el comando de nodo:
nodo [Tu nombre de script]
Manipulación de matrices en Lodash
Lodash viene con un conjunto de métodos para la manipulación de matrices que brindan una funcionalidad más allá de la clase Array integrada de JavaScript.
.pedazo
Este método divide una matriz en grupos de matrices más pequeñas de un tamaño determinado. El trozo final puede ser más pequeño que el tamaño que solicita.
Aquí hay un ejemplo:
constante matriz = [ 'a', 'b', 'C', 'd', 'mi', 'F', 'gramo' ];
constante newArray = _.chunk (matriz, 2)
consola.log (nueva matriz)
// Producción:
// [ [ 'a', 'b' ], [ 'c', 'd' ], [ 'e', 'f' ], [ 'g' ] ]
.concat
Este método genera una nueva matriz concatenando valores al final de una matriz existente.
Por ejemplo:
constanteformación = [ 1, 2, 'a' ];
constante nuevoArray = _.concat(formación, 5, 'b', [ 8 ], [ [ 9 ] ]);
consola.log (nueva matriz);
// Producción:
// [ 1, 2, 'a', 5, 'b', 8, [ 9 ] ]
.unirse
Este método devuelve una cadena al combinar elementos de una matriz. Los une usando un delimitador que pasas como parámetro cuando llamas al método. El delimitador predeterminado que utiliza es una coma:
constanteformación = [ "yo", "o", "d", "a", "s", "h" ];
constante nuevoArray = _.join(formación);
consola.log (nueva matriz);// Producción:
// l, o, d, a, s, hconstante nuevoArray = _.join(formación, "-");
consola.log (nueva matriz);
// Producción:
// a-o-d-a-s-h
Manipulación de cadenas en Lodash
Con JavaScript desnudo, el formateo de cadenas es un proceso simple. Pero lodash lo hace aún más fácil.
Algunas de las operaciones de manipulación de cadenas más comunes que puede realizar con lodash incluyen:
.empieza con y .termina con
Estos dos métodos verifican si una cadena comienza o termina con una subcadena, respectivamente. Ambos métodos devuelven un valor booleano de verdadero o falso.
Por ejemplo:
constante cadena = "lodash";
consola.log (_.empiezaCon(cadena, "yo"));
// Salida: verdaderoconsola.log (_.empiezaCon(cadena, "o"));
// Salida: falsoconsola.log (_.endsWith (cadena, "metro"));
// Salida: falso
consola.log (_.endsWith (cadena, "h"));
// Salida: verdadero
.repetir
Este método imprime repetidamente una cadena un número específico de veces. Toma la cadena como primer argumento y el número de repeticiones como segundo:
constante cadena = "lodash"
constante nuevaCadena = _.repetir (cadena, 3);
consola.log (nuevaCadena);
// Salida: lodashlodashlodash
.recortar
Este método elimina los espacios en blanco iniciales y finales. También puede usarlo para eliminar cualquier carácter específico al principio y al final de una cadena.
Por ejemplo:
// Eliminando los espacios en blanco iniciales y finales
constante cadena = " bar "
constante newString = _.trim (cadena)
consola.log (nuevaCadena);
// Salida: barra
// Eliminando caracteres especificados
constante cadena = ",bar,"
constante newString = _.trim (cadena, ",")
consola.log (nuevaCadena);
// Salida: barra
Manipulación de objetos en Lodash
A continuación se muestran algunos ejemplos de manipulación de cadenas que puede realizar con lodash:
.unir
El _.unir() crea un nuevo objeto combinando las propiedades de los objetos de entrada. El valor de una propiedad del objeto posterior reemplazará el valor del objeto anterior si la propiedad está presente en más de un objeto.
Por ejemplo:
constante libros = {
'Matemáticas': 4,
'Ciencia': 7
};
constante notas = {
'Ciencia': 3,
'Química': 5
};_.unir(libros, notas);
consola.libros de registro);
// Producción:
// { Matemáticas: 4, Ciencias: 3, Química: 5 }
En este ejemplo, el método agrega la propiedad 'Química' del segundo objeto y sobrescribe el valor de la propiedad 'Ciencia' del primer objeto.
.tiene
Este método devuelve verdadero si existe una serie dada de propiedades en un objeto y falso en caso contrario.
Por ejemplo:
constante libros = {
'Matemáticas': 4,
'Ciencia': 7
};
consola.log (_.tiene (libros, "Matemáticas"));
// Salida: verdadero
.omitir
Este método devuelve un nuevo objeto eliminando las propiedades especificadas del dado.
Por ejemplo:
variable libros = {
'Matemáticas': 4,
'Ciencia': 3,
'Química': 5
};
consola.log (_.omit (libros, "Ciencia"));
// Salida: { Matemáticas: 4, Química: 5 }
Composición de funciones en Lodash
La composición de funciones es una técnica que puede utilizar en un lenguaje de programación funcional. Implica combinar dos o más funciones en una nueva función llamando a cada función en un orden particular. Esta característica le permite crear una lógica más compleja a partir de funciones más simples.
Para aplicar esta técnica, lodash viene con el _.fluir y _.flowRight funciones El _.fluir() La función acepta una lista de funciones como argumentos y genera una nueva función que aplica las funciones en el mismo orden en que las pasa. El _.FlujoDerecha() function hace lo mismo, pero llama a las funciones al revés.
Por ejemplo:
funciónagregarcinco(número) {
devolver número + 5
}funcióntiemposDos(número) {
devolver número * 2
}constante sumarCincoYVezDos = _.flow([agregarCinco, VecesDos]);
constante addFiveAndTimesTwoReverse = _.flowRight([addFive, timesTwo]);
consola.log (añadircincoyvecesdos(3));
// Salida: 16
consola.log (añadirCincoYVecesDosReversa(3));
// Salida: 11
El código anterior define las funciones. agregarcinco y tiemposDos. La función addFive devuelve el resultado de sumar 5 a un número dado. La función timesTwo multiplica un número de entrada por 2 y devuelve el resultado.
A continuación, el código utiliza el _.fluir() función para combinar las otras dos y producir la nueva función, añadircincoyvecesdos. Esta nueva función primero realizará la operación addFive en su argumento antes de realizar la operación timesTwo en el resultado final.
El _.FlujoDerecha() function produce una nueva función que hace lo mismo que flow, pero a la inversa.
Finalmente, este código llama a las dos nuevas funciones, pasando 3, como argumento, y registra los resultados en la consola.
Los beneficios de trabajar con Lodash
Puede usar lodash para simplificar su código y hacer que sus proyectos sean más flexibles y fáciles de mantener. Su amplia gama de funciones de utilidad, adopción generalizada y actualizaciones periódicas lo ayudarán a escribir código elegante y efectivo. Puede usar lodash para garantizar que su código esté siempre actualizado y sea compatible con los navegadores contemporáneos.