What’s New in Node.js 22: Key Features and Improvements

Pawan Kumar
2 min readJul 6, 2024

--

Node.js 22 brings a host of new features and improvements designed to enhance performance, security, and developer experience. Here’s a detailed look at the major updates and how they compare to previous versions:

Updated V8 JavaScript Engine

Node.js 22 includes the latest version of the V8 engine, which introduces several new ECMAScript features such as:

  • WebAssembly Garbage Collection: Improves memory management for WebAssembly modules.
  • Array.fromAsync: Allows asynchronous array creation.
  • New Set Methods and Iterator Helpers: Enhances the functionality and efficiency of iterating over collections​(InMotion Hosting)​​ (DEV Community)​.

Maglev Compiler

Node.js 22 features the Maglev Compiler, which optimizes short-lived CLI programs, enhancing execution efficiency and performance​ (InMotion Hosting)​.

Direct Execution of package.json Scripts

A new experimental feature allows developers to execute scripts directly from the package.json file using the node --run <script-in-package-json> CLI flag. This streamlines workflow by simplifying script management and execution​ (InMotion Hosting)​​ (DEV Community)​.

Stable Watch Mode

The --watch flag, which automatically reloads Node.js processes when files change, has reached full stability. This is especially useful for iterative testing and development​ (InMotion Hosting)​.

Improved Stream Performance

Node.js 22 increases the default High Water Mark for streams from 16KiB to 64KiB, boosting performance for streaming operations, though it slightly increases memory usage​ (InMotion Hosting)​​ (DEV Community)​.

Built-in WebSocket Client

Node.js 22 includes a native WebSocket client, eliminating the need for external libraries like ws. This simplifies the development of real-time communication applications​ (DEV Community)​​ (InfoQ)​.

Enhanced Security and Native Module Support

This release continues to focus on security with numerous updates and fixes. Additionally, enhancements in the native module ecosystem make it easier to integrate C++ modules with Node.js, which is critical for performance-intensive applications​ (DEV Community)​​ (InfoQ)​.

Globbing Capabilities

The introduction of glob and globSync functions in the fs module allows developers to match file paths based on specific patterns easily, improving file management operations​ (InMotion Hosting)​.

Examples

Example of Using Array.fromAsync:

Array.fromAsync({
length: 3,
0: Promise.resolve(1),
1: Promise.resolve(2),
2: Promise.resolve(3),
}).then((array) => console.log(array));
// Output: [1, 2, 3]

Example of Direct Execution from package.json:

{
"scripts": {
"start": "node app.js"
}
}
node --run start

Example of Built-in WebSocket Client:

const { WebSocket } = require('node:ws');

const client = new WebSocket('ws://example.com/websocket');

client.on('open', () => {
console.log('WebSocket connection established');
client.send('Hello, server!');
});

Why Upgrade to Node.js 22?

Upgrading to Node.js 22 ensures you’re using the most efficient, secure, and feature-rich version of the platform. This release offers significant performance improvements, enhanced security, and new features that streamline development workflows and improve code maintainability​ (DEV Community)​​ (DEV Community)​.

For detailed documentation and to download Node.js 22, visit the official Node.js website.

--

--