The difference between node versions 14 and 10: 1. Version 10 stops using the V8 engine in Chromium and uses version 6.6 of V8, while the V8 used in version 14 has been upgraded to version 8.1; 2. Version 14 can directly use "ES Modules" and does not It will alarm, but it cannot be used in version 10.
The operating environment of this article: Windows 10 system, nodejs 10&&node 14 version, Dell G3 computer.
Node 10
vm: add dynamic import support. Support dynamic import.
However, the ES module is still experimental, and import/export cannot be used directly in the code unless the experimental flag is turned on. If you want to use it, you still have to see how to write ES6 import in NodeJS.
Updated nghttp2 to 1.34.0. This adds RFC 8441 extended connect protocol support to allow use of WebSockets over HTTP/2. Updated nghttp2 to 1.34.0. This adds RFC 8441 Extended Connection Protocol support to allow the use of WebSockets over HTTP/2.
Node 8 introduces an experimental HTTP/2 module, which is a good upgrade to Node. HTTP/2 improves the standard HTTP protocol, with advanced features such as multiplexing, single connection, server push, header compression, etc. This time it also fixes some security issues and adds websocket support.
Adding Error Codes. Error messages in Node are now standardized.
The n-api is no longer experimental. [cd7d7b15c1]. N-API is no longer an experimental feature
The Node documentation describes N-API as an API for building native plugins. It is independent of the underlying JavaScript runtime (ex V8) and maintained as part of Node.js itself. This API will be a stable application binary interface (ABI) across Node.js versions. It is designed to insulate Addons from changes in the underlying JavaScript engine and allow modules compiled for one version to run on later versions of Node.js without recompilation.
patch V8 to 6.6.346.24. Node stops using the V8 engine in Chromium and uses version 6.6 of v8.
Improved diagnostic tracking. Node 10 adds tracking events to provide developers with more visibility into their Node.js applications. When starting the node application, add the parameter --trace-event-categories to open it. You can learn more in the documentation.
update npm to 6.14.3. Updated to NPM 6, this version of npm adds all the various improvements including performance, security, and stability
upgrade openssl sources to 1.1.1e. Node comes with modern cryptographic support for the highly anticipated ChaCha20 cipher and Poly1305 authenticator
fs: remove experimental warning for fs.promises. fs can use promises directly, and there is no need to use the util.promisify() function for conversion like in Node 8.
const fs = require('fs'); const fsPromises = fs.promises;// Synchronously read console.log(fs.readFileSync('temp.txt', 'utf8'));// Promise reading feels more comfortable Trouble. async function doRead() { let filehandle = null; try { filehandle = await fsPromises.open('temp.txt', 'r+'); let read = await filehandle.readFile(); console.log(read); } finally { if (filehandle) { // If the file is open, close the file. await filehandle.close(); } }}doRead().catch(console.error);Node 14
ECMAScript Modules - Experimental Warning Removal
In Node.js 13 we removed the need to include the --experimental-modules flag, but when running EcmaScript Modules in Node.js, this would still result in a warning ExperimentalWarning: The ESM module loader is experimental.
Starting from Node 13, ES Modules can be used directly but an alarm will occur. After Node 14, ES Modules can be used without alarm.
V8 upgraded to 8.1
ArrayBuffer uses the new V8 ArrayBuffer API
openssl sources updated to 1.1.1
Console groupIndentation option. The console can be configured to be longer than two spaces.
Recommended learning: "nodejs video tutorial"
The above is the detailed content of the difference between node version 14 and 10. For more information, please pay attention to other related articles on this site!