With the release of Node.js 11 in April of this year, since then there
has been some new and updated features. As we come across this
technology a lot when dealing with our candidates and clients, felt it
might be interesting to research into it a little more and see exactly
what the most recent features consist of.
Starting with Node.js 11, it offers these new/updated features:
The V8 Version 7 JavaScript and WebAssembly engine is included.
The read() method requires a callback.
The SyncWriteStream utility, which was previously critiscised, has
been removed.
Interval timers will be rescheduled even if a previous interval threw
an error.
Windows performance counter support has been removed.
Use of binding() has been deprecated.
FreeBSD 10 is no longer supported.
For child processes, the default value of the windowsHide option has
been changed to true.
What’s new in Node.js 10
There has also been a few changes to Node.js 10:
Operations per second are nearly twice as high as in the previous
version, Node.js 6, with latency decreased by 65 percent.
Performance boosts via V8, including for the async generator
and array.
JavaScript language improvements, including prototype.toString(),
which now returns exact slices of source code text, and mitigations
for side-channel vulnerabilities to prevent information leaks.
Increased visibility into code performance issues via trace events.
The footprint after load is 35 percent lower in Node.js 10 compared
to Node.js 6, for increased cold start performance.
Error-handling improvements, with adoption of error codes to ease
constant error-checking.
An API that allows user code to enable and disable trace events on
demand at runtime, for improved flexibility in diagnosing issues in
applications.