Novos recursos do Nodejs 18 e 19
ola pessoal, neste artigo falaremos sobre algumas funcionalidades do node js versão 18 e versão 19.
FindLast & FindLastIndex
Esses métodos de matriz são semelhantes a find e findIndex , funcionalmente idênticos a find e findIndex. Mas há alguma diferença, esses métodos procuram itens na matriz a partir do final.
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
Acho essa bandeira muito importante. não precisamos mais do nodemon se pudermos usar esse sinalizador. A execução de um aplicativo Node.js no modo de exibição reinicia automaticamente o processo quando um arquivo importado é alterado.
node --watch app.js
Antes do Node.js v18, você não podia usar a API Fetch no Node.js para solicitar dados de uma API. Você tinha que instalar node-fetch ,axios ou outra biblioteca de terceiros. Com o node js v18, não precisamos de nenhum pacote de terceiros para buscar
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();
Uma nova maneira de 'importar' módulos que utiliza um prefixo 'node:', o que torna imediatamente evidente que os módulos são do núcleo Node.js
Módulo executor de teste embutido
Com o lançamento do Node.js v18, um executor de teste agora está incluído no Node.js e pode ser acessado com:
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
Motor V8 atualizado para v10.1
O Node.js é executado com o mecanismo V8 do navegador de código aberto Chromium. Este mecanismo foi atualizado para a versão 10.1, que faz parte da atualização recente do Chromium 101.
Tempo limite de HTTP
Os tempos limite do http.server foram alterados:
headersTimeout(o tempo permitido para um cabeçalho de solicitação HTTP ser analisado) é definido como 60.000 milissegundos (60 segundos).requestTimeout(o tempo limite usado para uma solicitação HTTP) é definido como 300.000 milissegundos (5 minutos) por padrão.
Meu Canal do Youtube.
Bom trabalho a todos.





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)