La función sort() de Matlab además de devolver los datos ordenados también devuelve la posición de estos en el conjunto original en la nueva lista, algo que es muy útil cuando necesitamos ordenar los elementos de un vector en base a los valores de otro. Por ejemplo, si en un vector tenemos unos nombres y en otro unos valores asociados a los primeros es posible ordenar los … [Leer más...] acerca de Obtener los índices para ordenar un vector en JavaScript
JavaScript
JavaScript es el lenguaje de la web, ya que es el único con el que es posible actualmente crear acciones para modificar el comportamiento de las páginas web. Lenguaje al que siempre son traducidas las instrucciones de otros lenguajes, como TypeScript, y soluciones. Aunque también es posible emplearlo para soluciones en servidores gracias a entornos como Node y Deno. Debido a que cada día es más popular la publicación de informes, de los que se espera cierto dinamismo, y creación de aplicaciones en páginas web, un conocimiento básico de este lenguaje es hoy en día clave.
Las publicaciones de la sección JavaScript versan sobre el propio lenguaje, el uso de librerías genéricas y para la ciencia de datos, uso de entornos como Node y TypeScript.
Creación de un único archivo de tipos de una librería TypeScript
El año pasado publiqué una serie de entradas en las que explicaba un proceso para estructurar y crear una librería TypeScript. Explicando al final de esta un proceso para crear con Webpack un único archivo JavaScritp con toda la librería. Lo que nos permite usar el código creado en navegador y otros proyectos JavaScritp. El único problema de este archivo es que perdemos las … [Leer más...] acerca de Creación de un único archivo de tipos de una librería TypeScript
Truco: Aumentar la memoria máxima en Node
Al ejecutar un proceso de Node que sea intensivo en memoria nos podemos encontrar que este finalice de una forma abrupta con un mensaje similar a FATAL ERROR: invalid table size Allocation failed - JavaScript heap out of memory. Lo que nos indica que este se ha quedado sin memoria. Generalmente esto no es debido a que el ordenador se quede sin memoria, sino a que se ha … [Leer más...] acerca de Truco: Aumentar la memoria máxima en Node
Uso de GPU en JavaScript para mejorar el rendimiento
Actualmente la mayoría de los ordenadores cuentan tanto con CPUs como GPUs. Hasta hace poco las GPUs, a pesar de ser unos procesadores cada vez más potentes, solamente se utilizaban en juegos y otras aplicaciones que requerían realizar pesados cálculos gráficos. Actualmente la aparición de librerías como CUDA permite el uso de estos procesadores en aplicaciones de propósito … [Leer más...] acerca de Uso de GPU en JavaScript para mejorar el rendimiento
Localizar la palabra más larga en una cadena de texto en JavaScript
En esta ocasión vamos a ver cómo se puede resolver un problema que a primera vista parece sencillo: localizar la palabra más larga en una cadena de texto. Para conseguir este objetivo va a ser necesario separar las palabras, ignorando los signos de puntuación, y medir la longitud de estas. Para lo que vamos a utilizar expresiones regulares en JavaScript.Paso 1: eliminar los … [Leer más...] acerca de Localizar la palabra más larga en una cadena de texto en JavaScript
Truco JavaScript: repetir un vector en JavaScript
En Python existe una forma extremadamente sencilla de replicar el contenido de una lista una cantidad de veces, simplemente multiplicando la lista por un escalar. Por ejemplo, si escribimos [1, 2] * 3 se obtienen [1, 2, 1, 2, 1, 2]. Pero repetir un vector en JavaScript es algo más complicado que se puede conseguir con un par de trucos.Uso de Array(), fill() y … [Leer más...] acerca de Truco JavaScript: repetir un vector en JavaScript
Truco: Validar palabras con acentos mediante expresiones regulares
Uno de los problemas con los que nos podemos encontrar a la hora de validar nombres mediante el uso de expresiones regulares son los acentos. Debido a que las expresiones regulares nacieron pensando únicamente para trabajar en inglés. Generalmente para validar las cadenas que contienen letras se usa el patrón a-zA-Z, pero éste ignora los acentos y otros caracteres, como ç, que … [Leer más...] acerca de Truco: Validar palabras con acentos mediante expresiones regulares
Guardar archivos CSV en Node
La semana pasada hemos visto el uso del módulo csv-parser para procesar archivos CSV en Node. Lo que facilita la importación de este formato de archivo. Uno de los más utilizados para el intercambio de datos entres sistemas. Esta semana vamos a ver dos módulos (csv-writer y fast-csv) con los que podremos hacer el proceso inverso: guardar archivos CSV en Node.El módulo … [Leer más...] acerca de Guardar archivos CSV en Node
Importar archivos CSV en Node con csv-parser
Los archivos de valores separados por comas (CSV) es uno de los formatos más utilizados para el intercambio de información entre sistemas. Incluyendo también aquellos en los que los valores son separados por otros caracteres. Ya que, al ser simplemente archivos de texto plano, es posible leerlos e interpretarlos sin la necesidad de un programa específico. De hecho, en el caso … [Leer más...] acerca de Importar archivos CSV en Node con csv-parser
Publicaciones de aplicaciones Node en IIS
Si tenemos un Servidor Windows podemos usar Microsoft Internet Information Services (IIS) para publicar las aplicaciones creadas con Node. Lo que nos va a permitir tener publicadas en un mismo dominio diferentes aplicaciones Node junto a otras creadas con .NET. Siendo la publicación de aplicaciones Node en IIS una de las mejores opciones cuando se trabaja con Windows … [Leer más...] acerca de Publicaciones de aplicaciones Node en IIS
Incluir el número de versión con Webpack
Recientemente se ha publicado una serie en la que se explicaba cómo se puede crear una librería JavaScript en Node usando para ellos TypeScript. Serie que complementa la publicada hace unos años acerca de cómo crear una librería en JavaScript. Algo que puede ser de interés a la hora de publicar librerías es incluir en las mismas el número de versión y otra información relativa … [Leer más...] acerca de Incluir el número de versión con Webpack
Aplicaciones de Node en producción con PM2
Para lanzar una aplicación Node solamente hay que ir a la terminal y ejecutar el comando node app.js, donde app.js es el archivo que contiene el punto de inicio del programa. Proceso que no es adecuado para poner las aplicaciones en producción. Una solución para solucionar este problema es utilizar el gestor de procesos PM2. Un gestor con el que es posible lanzar las … [Leer más...] acerca de Aplicaciones de Node en producción con PM2