Novedades de Node.js V22.5

Compartir esta noticia

Una breve introducción sobre la nueva herramienta.

En este artículo, revisaremos los cambios notables introducidos en la nueva versión de Node.js :

  • Agregar node:sqlitemódulo (Colin Ihrig) #53752
  • método add matchesGlob(Aviv Keller) #52881
  • añadir postMessageToThread(Paolo Insogna) #53682

¡Empecemos!

node:sqlite

El node:sqlitemódulo facilita el trabajo con bases de datos SQLite.

				
					// index.js 

const { DatabaseSync } = require ( 'node:sqlite' ); 
const database = new  DatabaseSync ( ':memory:' ); 

// Ejecutar sentencias SQL desde strings.
 database. exec ( ` 
  CREATE TABLE data( 
    id INTEGER PRIMARY KEY, 
    name TEXT 
  ); 
` ); 

// Crear una sentencia preparada para insertar datos en la base de datos. 
const insert = database. prepare ( 'INSERT INTO data (id, name) VALUES (?, ?)' ); 

// Ejecutar la sentencia preparada con valores enlazados.
 insert. run ( 1 , 'Bob' ); 
insert. run ( 2 , 'John' ); 

// Crear una sentencia preparada para leer datos de la base de datos. 
const query = database. prepare ( 'SELECT * FROM data ORDER BY id' ); 

// Ejecutar la sentencia preparada y registrar el conjunto de resultados. 
console . log (query. all ()); 

// [ { id: 1, nombre: 'Bob' }, { id: 2, nombre: 'Juan' } ]
				
			

El siguiente ejemplo muestra el uso básico del node:sqlitemódulo para abrir una base de datos en memoria, escribir datos en la base de datos y luego volver a leerlos.

Esta biblioteca incorporada se vuelve disponible cuando se utiliza la --experimental-sqlitebandera.

				
					nodo --experimental-sqlite index.js
				
			

Nosotros, los desarrolladores, junto con los módulos nativos de Node.js, utilizamos muchos módulos externos para que el servidor sea completamente funcional. Es excelente que Node.js intente incluir esas herramientas importantes por sí solo. Por ejemplo, recientemente agregaron un soporte nativo para test runner , por lo que cambiamos de la biblioteca nativa jestmochala biblioteca nativa. Ahora es el momento de las bases de datos y los ORM.

Este es actualmente un módulo experimental y llevará algún tiempo hasta que se estabilice y tenga más métodos.

Agradezcamos el esfuerzo del equipo de Node.js Core. Algún día, solo utilizaremos una pequeña cantidad de bibliotecas externas, ya que la mayoría de los módulos clave estarán disponibles de forma nativa.

matchesGlob

Este es otro método experimental que determina si pathcoincide con el pattern.

				
					ruta .matchesGlob( '/foo/bar' , '/foo/*' ); // verdadero 
ruta .matchesGlob( '/foo/bar*' , 'foo/bird' ); // falso
				
			

Para conoce más Click aquí

ponerse en contacto