Nouvelle version de Node.js 22 : principales modifications et améliorations

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Node.js 22 est sorti : aperçu des principales nouveautés



Le 22 avril 2024 a eu lieu la sortie officielle de Node.js 22 — la nouvelle version stable de la plateforme serveur JavaScript populaire. Cette mise à jour apporte de nombreuses améliorations en termes de performances, de sécurité et de confort de développement. Passons en revue les points les plus intéressants.



Principales modifications dans Node.js 22



1. Moteur V8 mis à jour vers la version 12.4

Node.js 22 est basé sur le nouveau moteur V8 12.4, déjà utilisé dans Chrome 124. Parmi les améliorations clés :

  • Optimisation du travail avec les tableaux — le nouveau Array.fromAsync permet de créer des tableaux à partir d'itérateurs asynchrones sans promesses superflues.
  • Analyse syntaxique accélérée — grâce à un compilateur JIT amélioré, la vitesse d'exécution du code a augmenté en moyenne de 5 à 10 %.
  • Nouvelles méthodes pour RegExp — ajout du support du drapeau v pour une syntaxe plus flexible des expressions régulières.


2. WebSocket devient stable (sans drapeau)

Auparavant, WebSocket dans Node.js était expérimental et nécessitait un lancement avec le drapeau --experimental-websocket. Dans la version 22, il a enfin obtenu le statut d'API stable. Vous pouvez désormais utiliser le WebSocket intégré sans configuration supplémentaire :

const ws = new WebSocket('ws://example.com');ws.onmessage = (event) => console.log(event.data);

Cela simplifie la création d'applications en temps réel (real-time) — chats, trackers, jeux.



3. Modules ESM par défaut pour les scripts

À partir de Node.js 22, si vous exécutez un script avec l'extension .mjs ou si package.json contient "type": "module", le système de modules CommonJS n'est plus utilisé par défaut. C'est une étape importante vers la standardisation de l'écosystème autour des modules ES.

  • Simplification des importations — désormais import/export fonctionne nativement sans transpileurs.
  • Support de top-level await — il est possible d'attendre des promesses au niveau supérieur du module.


4. Amélioration du travail avec les flux (Streams)

De nouvelles méthodes pour travailler avec les flux ont été ajoutées :

  • ReadableStream.from() — permet de créer des flux lisibles à partir de n'importe quel itérateur (par exemple, à partir de Set ou Map).
  • WritableStream.getWriter() — simplifie l'écriture de données dans les flux sans enveloppes superflues.


5. Sécurité renforcée

Dans Node.js 22, les politiques de sécurité ont été renforcées :

  • Échappement automatique lors de l'affichage des données dans la console via console.log() pour prévenir les injections.
  • Interdiction d'utiliser des algorithmes cryptographiques obsolètes par défaut (par exemple, SHA-1 pour les signatures).


Qu'est-ce que cela signifie pour les développeurs ?

Node.js 22 n'est pas seulement une version de plus, mais une étape importante dans l'évolution de la plateforme. Les principaux avantages pour les développeurs :

  • Moins de dépendances — le WebSocket intégré et les ESM stables permettent de se passer de paquets tiers (par exemple, ws ou esm).
  • Performances accrues — grâce aux optimisations

Recommended Libraries