Node got a native test runner. You no longer need Jest or Mocha for simple projects. node --test is here, bringing built-in assertion libraries and reporting.
Node 18 introduced several high-impact features that removed the need for many common external dependencies: The Most Exciting New Feature In Node18 | by Trevor Bennett
Node.js started strongly encouraging the use of the node: prefix when importing core modules to avoid naming conflicts with npm packages (e.g., import fs from 'node:fs' instead of import fs from 'fs' ). 5. V8 Engine 10.1 Update node 18 full
import test from 'node:test'; import assert from 'node:assert'; test('top-level test', async (t) => await t.test('subtest 1', (t) => assert.strictEqual(1, 1); ); ); Use code with caution. 3. The V8 Engine Upgrade (Version 10.1)
| Change | Impact | |--------|--------| | fetch now global | Code that defined its own fetch variable will break. | | net socket setNoDelay default changed | Minor performance tuning may be needed. | | dns module now uses actual OS DNS settings | Possibly different resolution order. | | Deprecation of url.parse() (still works but emits warning) | Use new URL() instead. | Node got a native test runner
Since official community support has ended, users on Node 18 should follow these guidelines: Node.js 18 is now available! 19 Apr 2022 —
: Highly optimized for speed and memory efficiency. 2. Built-in Test Runner Node 18 introduced several high-impact features that removed
Under the hood, Node.js 18 shipped with the V8 JavaScript engine version 10.1, the same engine that powers Google Chrome. This upgrade included performance improvements and, most notably for developers, the new findLast() and findLastIndex() array methods. These methods solve a common developer need: finding an element from the end of an array without having to reverse it first.
Upgrading production enterprise applications requires a methodical approach to prevent service interruptions.