Nuove funzionalità di Nodejs 18 e 19
ciao a tutti, in questo articolo parleremo di alcune funzionalità di node js versione 18 e versione 19.
TrovaUltimo e TrovaUltimoIndice
Questi metodi di matrice sono simili a find e findIndex , Funzionalmente identici a find e findIndex. Ma c'è qualche differenza, questi metodi cercano l'elemento nell'array dalla fine.
const array = [{ value: 1 }, { value: 2 }, { value: 3 }, { value: 4 }];
array.find(n => n.value % 2 === 1); // { value: 1 }
array.findIndex(n => n.value % 2 === 1); // 0
// find
array.findLast(n => n.value % 2 === 1); // { value: 3 }
// findIndex
array.findLastIndex(n => n.value % 2 === 1); // 2
array.findLastIndex(n => n.value === 42); // -1
Penso che questa bandiera sia molto importante. non abbiamo più bisogno di nodemon se possiamo usare questo flag. L'esecuzione di un'app Node.js in modalità watch riavvia automaticamente il processo quando un file importato cambia.
node --watch app.js
Prima di Node.js v18, non potevi utilizzare l'API Fetch in Node.js per richiedere dati da un'API. Dovevi installare node-fetch ,axios o un'altra libreria di terze parti. Con node js v18 non abbiamo bisogno di pacchetti di terze parti per il recupero
async function fetchData() {
const response = await fetch(
"https://random-data-api.com/api/name/random_name"
);
if (response.ok) {
const data = await response.json();
console.log(data);
}
}
fetchData();
Un nuovo modo di "importare" i moduli che sfrutta un prefisso "node:", che rende immediatamente evidente che i moduli provengono dal core di Node.js
Modulo test runner integrato
Con il rilascio di Node.js v18, un test runner è ora incluso in Node.js ed è possibile accedervi con:
const test = require('node:test')
const assert=require('node:assert')
test("My Test", async (t) => {
await t.test("It should equal two numbers", () => {
assert.equal(3, 4);
});
await t.test("It should not equal two numbers", () => {
assert.notEqual(2, 1);
});
});
//node --watch yourfile.js
Motore V8 aggiornato alla v10.1
Node.js viene eseguito con il motore V8 dal browser open source Chromium. Questo motore è stato aggiornato alla versione 10.1, che fa parte del recente aggiornamento di Chromium 101.
Timeout HTTP
I timeout http.server sono cambiati:
headersTimeout(il tempo consentito per l'analisi di un'intestazione di richiesta HTTP) è impostato su 60000 millisecondi (60 secondi).requestTimeout(il timeout utilizzato per una richiesta HTTP) è impostato su 300000 millisecondi (5 minuti) per impostazione predefinita.
Il mio canale Youtube.
Buon lavoro a tutti.

![Che cos'è un elenco collegato, comunque? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































