Is a JavaScript runtime built on Chrome`s V8 JavaScript engine

Node.js for Mac

Node.js 18.8.0

  -  65.66 MB  -  Open Source

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of Node.js 18.8.0.


For those interested in downloading the most recent release of Node.js for Mac or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

  • Node.js 18.8.0 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Node.js 18.8.0 Screenshot 1
  • Node.js 18.8.0 Screenshot 2
  • Node.js 18.8.0 Screenshot 3
  • Node.js 18.8.0 Screenshot 4

What's new in this version:

Notable changes:
- Bootstrap: implement run-time user-land snapshots via --build-snapshot and --snapshot-blob
- This patch introduces --build-snapshot and --snapshot-blob options for creating and using user land snapshots

To generate a snapshot using snapshot.js as an entry point and write the snapshot blob to snapshot.blob:
- Echo "globalThis.foo = 'I am from the snapshot'" > snapshot.js
- Node --snapshot-blob snapshot.blob --build-snapshot snapshot.js

To restore application state from snapshot.blob, with index.js as the entry point script for the deserialized application:
- Echo "console.log(globalThis.foo)" > index.js
- Node --snapshot-blob snapshot.blob index.js
- # => I am from the snapshot

Users can also use the v8.startupSnapshot API to specify an entry point at snapshot building time, thus avoiding the need of an additional entry script at deserialization time:
- Echo "require('v8').startupSnapshot.setDeserializeMainFunction(() => console.log('I am from the snapshot'))" > snapshot.js
- Node --snapshot-blob snapshot.blob --build-snapshot snapshot.js
- Node --snapshot-blob snapshot.blob
- # => I am from the snapshot

Other notable changes:
Crypto:
- (SEMVER-MINOR) allow zero-length IKM in HKDF and in webcrypto PBKDF2
- (SEMVER-MINOR) allow zero-length secret KeyObject

Deps:
- upgrade npm to 8.18.0 (npm team) #44263 - Adds a new npm query command

Doc:
- add Erick Wendel to collaborators
- add theanarkh to collaborators
- add MoLow to collaborators
- add cola119 to collaborators
- deprecate --trace-atomics-wait

Http:
- (SEMVER-MINOR) make idle http parser count configurable

Net:
- (SEMVER-MINOR) add local family

Src:
- (SEMVER-MINOR) print source map error source on demand

Tls:
- (SEMVER-MINOR) pass a valid socket on tlsClientError