Publicación de mi librería en NPM: extends-javascript

Publicación de mi librería en NPM: extends-javascript

Con esta nueva entrada del blog, quiero anunciar que he desarrollado una pequeña librería que amplia las funcionalidades del Prototipo de Arrays de JavaScript y que esta publicada en npm.

Estoy emocionado de presentarles un proyecto en el que he estado trabajando arduamente: extends-javascript.

¿Qué es extends-javascript?

Extends-javascript es una librería de código abierto que proporciona de una manera sencilla un listado de nuevos métodos personalizados al prototipo de Array en JavaScript.

Con esta dependencia, podrás acceder a una variedad de métodos adicionales para manipular y operar arreglos de una manera muy simple.

Características principales de extends-javascript

Extends-javascript ofrece una amplia gama de características y funcionalidades para trabajar con arreglos.

A continuación, se muestran todas las funcionalidades disponibles:

  • $allCoincidencesBy(properties): Devuelve un arreglo de todos los elementos que coinciden con las propiedades especificadas.
  • $chunk(chunkSize = 1): Divide el arreglo en trozos más pequeños.
  • $compact(): Elimina los valores falsy del arreglo.
  • $countOccurrences(value): Cuenta el número de veces que aparece un valor en el arreglo.
  • $drop(n): Elimina los primeros n elementos del arreglo.
  • $findIndex(callback): Devuelve el índice del primer elemento que cumple con una condición específica.
  • $findLast(callback): Devuelve el último elemento que cumple con una condición específica.
  • $first(): Devuelve el primer elemento del arreglo.
  • $flatten(): Aplana un arreglo anidado.
  • $forEachRight(callback): Itera sobre el arreglo en orden inverso.
  • $generateExampleData(structure): Genera datos de ejemplo basados en una estructura.
  • $groupBy(prop): Agrupa los elementos del arreglo por una propiedad específica.
  • $groupByMultiple(…conditions): Agrupa los elementos del arreglo por múltiples condiciones.
  • $insertIn(index, …elements): Inserta elementos en una posición específica del arreglo.
  • $intersection(…arrays): Devuelve un nuevo arreglo con los elementos comunes entre varios arreglos.
  • $isEmpty(): Verifica si el arreglo está vacío.
  • $last(): Devuelve el último elemento del arreglo.
  • $maxByProperty(property): Devuelve el elemento del arreglo con el valor máximo de una propiedad específica.
  • $mean(): Calcula el promedio de todos los elementos numéricos del arreglo.
  • $merge(…arrays): Combina varios arreglos en uno solo.
  • $notDuplicated(): Elimina los elementos duplicados del arreglo.
  • $notDuplicatedBy(prop): Elimina los elementos duplicados del arreglo basado en una propiedad específica.
  • $padStart(length, value): Rellena el arreglo al principio con un valor específico hasta alcanzar una longitud determinada.
  • $pick(…props): Selecciona las propiedades específicas de cada elemento del arreglo y las devuelve en un nuevo arreglo.
  • $pluck(key): Extrae los valores de una propiedad específica de cada elemento del arreglo y los devuelve en un nuevo arreglo.
  • $remove(element): Elimina la primera aparición de un elemento en el arreglo.
  • $replace(searchValue, replaceValue): Reemplaza un valor específico en el arreglo.
  • $reverse(): Invierte el orden de los elementos en el arreglo.
  • $sortBy(prop, sortOrder = ‘asc’): Ordena el arreglo según una propiedad específica y un orden determinado.
  • $sum(): Calcula la suma de todos los elementos numéricos del arreglo.
  • $sumOfProperty(property): Calcula la suma de una propiedad específica en todos los elementos del arreglo.
  • $symmetricDifference(otherArray): Devuelve un nuevo arreglo con los elementos que son únicos en cada uno de los arreglos.
  • $take(n): Retorna los primeros n elementos del arreglo.
  • $trimEnd(callback): Elimina los elementos finales del arreglo hasta que una condición específica se cumpla.
  • $trimStart(callback): Elimina los elementos iniciales del arreglo hasta que una condición específica se cumpla.
  • $union(…arrays): Combina varios arreglos en uno solo sin elementos duplicados.

Estas funcionalidades han sido diseñadas para facilitar tareas comunes al trabajar con arreglos en JavaScript.

Cómo utilizar extends-javascript

Para comenzar a utilizar extends-javascript en tus proyectos es muy sencillo. Solo sigue estos pasos:

  1. Instala extends-javascript a través de npm en tu proyecto:
npm install extend-javascript.js
  1. Incluye extends-javascript en tu fichero
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Extends Javascript</title>
</head>
<body>
  <script src="./node_modules/extend-javascript.js/src/index.js"></script>
  <script>
    const arr = [1, 2, 3, 4, 5];
    console.log(arr.$first()); // 1
    console.log(arr.$last()); //  5
  </script>
</body>
</html>
  1. A partir de ahora, podrás utilizar los métodos adicionales en tus arreglos:

A futuro

Extends-javascript es un proyecto de código abierto y siempre estoy abierto a cualquier feedback.

Si tienes alguna idea, sugerencia o encuentras algún problema, no dudes en visitar el repositorio en GitHub y compartir tus ideas.

Para finalizar, me gustaría anunciar que en futuras versiones de extends-javascript, también se añadirán nuevas funcionalidades al prototipo de «Object«, «Number» y «String«.

Esto ampliará aún más las posibilidades y facilitará el trabajo con estos tipos de datos en JavaScript.

Espero que encuentres extends-javascript útil y emocionante para tus proyectos en JavaScript.

¡Feliz desarrollo!