Heim  >  Artikel  >  Web-Frontend  >  Was ist der Unterschied zwischen Knotenversion 14 und 10?

Was ist der Unterschied zwischen Knotenversion 14 und 10?

WBOY
WBOYOriginal
2022-07-06 16:37:582650Durchsuche

Der Unterschied zwischen Knotenversion 14 und 10: 1. Version 10 verwendet die V8-Engine in Chromium nicht mehr und verwendet Version 6.6 von V8, während die in Version 14 verwendete V8 auf Version 8.1 aktualisiert wurde. 2. Version 14 kann direkt verwendet werden "ES-Module" Und es wird kein Alarm ausgelöst, kann aber in Version 10 nicht verwendet werden.

Was ist der Unterschied zwischen Knotenversion 14 und 10?

Die Betriebsumgebung dieses Artikels: Windows 10-System, NodeJS 10 und Node 14-Version, Dell G3-Computer.

Was ist der Unterschied zwischen Node-Version 14 und 10?

Node 10

  • vm: Unterstützung für dynamischen Import hinzufügen. Unterstützt dynamischen Import.

Das ES-Modul ist jedoch noch experimentell und der Import/Export kann nicht direkt im Code verwendet werden. Wenn Sie es verwenden möchten, müssen Sie noch sehen, wie der ES6-Import geschrieben wird in NodeJS.

  • NGhttp2 auf 1.34.0 aktualisiert. Dadurch wird die Unterstützung für das erweiterte Verbindungsprotokoll RFC 8441 hinzugefügt, um die Verwendung von WebSockets über HTTP/2 zu ermöglichen. nghttp2 auf 1.34.0 aktualisiert. Dadurch wird die Unterstützung des RFC 8441 Extended Connection Protocol hinzugefügt, um die Verwendung von WebSockets über HTTP/2 zu ermöglichen.

Node 8 führt ein experimentelles HTTP/2-Modul ein, dieses Mal ist es ein gutes Upgrade für Node. HTTP/2 verbessert das Standard-HTTP-Protokoll mit erweiterten Funktionen wie Multiplexing, Einzelverbindung, Server-Push, Header-Komprimierung usw. Dieses Mal werden auch einige Sicherheitsprobleme behoben und Websocket-Unterstützung hinzugefügt.

  • Hinzufügen von Fehlercodes. Fehlermeldungen in Node sind jetzt standardisiert.

  • Die N-API ist nicht mehr experimentell [cd7d7b15c1]. N-API ist keine experimentelle Funktion mehr

Die Node-Dokumentation beschreibt N-API als API zum Erstellen nativer Plugins. Es ist unabhängig von der zugrunde liegenden JavaScript-Laufzeit (ex V8) und wird als Teil von Node.js selbst verwaltet. Diese API wird eine stabile Anwendungsbinärschnittstelle (ABI) für alle Node.js-Versionen sein. Es wurde entwickelt, um Add-ons vor Änderungen in der zugrunde liegenden JavaScript-Engine zu schützen und die Ausführung von Modulen, die für eine Version kompiliert wurden, auf späteren Versionen von Node.js ohne Neukompilierung zu ermöglichen.

  • Patch V8 auf 6.6.346.24. Der Knoten verwendet die V8-Engine in Chromium nicht mehr und verwendet Version 6.6 von v8,

  • verbesserte Diagnoseverfolgung. Node 10 fügt Tracking-Ereignisse hinzu, um Entwicklern mehr Einblick in ihre Node.js-Anwendungen zu bieten. Fügen Sie beim Starten der Knotenanwendung den Parameter --trace-event-categories hinzu, um sie zu öffnen. Weitere Informationen finden Sie in der Dokumentation

  • npm auf 6.14.3 aktualisieren. Diese mit NPM 6 aktualisierte Version von npm bietet alle verschiedenen Verbesserungen, einschließlich Leistung, Sicherheit und Stabilität.

  • Aktualisieren Sie die OpenSSL-Quellen auf 1.1.1e. Node verfügt über moderne kryptografische Unterstützung für die mit Spannung erwartete ChaCha20-Verschlüsselung und den Poly1305-Validator

  • fs: experimentelle Warnung für fs.promises entfernen. fs kann Versprechen direkt verwenden und es ist nicht erforderlich, die Funktion util.promisify() für die Konvertierung wie in Knoten 8 zu verwenden.

const fs = require('fs');
const fsPromises = fs.promises;
// 同步读取
console.log(fs.readFileSync('temp.txt', 'utf8'));
// promise 读取,感觉更麻烦了。
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) {
      // 如果文件已打开,则关闭文件。
      await filehandle.close();
    }
  }
}
doRead().catch(console.error);

Node 14

ECMAScript-Module – Entfernung experimenteller Warnungen

In Node.js 13 haben wir die Notwendigkeit entfernt, das Flag --experimental-modules einzuschließen, aber wenn EcmaScript-Module in Node.js ausgeführt werden, ist dies der Fall würde immer noch zu einer Warnung führen. ExperimentalWarnung: Der ESM-Modullader ist experimentell.

Ab Knoten 13 können Sie ES-Module direkt verwenden, aber nach Knoten 14 wird ein Alarm angezeigt, Sie können ihn ohne Alarmierung verwenden.

  • V8 wurde auf 8.1 aktualisiert.

  • ArrayBuffer verwendet die neue V8 ArrayBuffer-API. Die Konsole kann so konfiguriert werden, dass sie länger als zwei Leerzeichen ist.

  • Empfohlenes Lernen: „

    nodejs Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Knotenversion 14 und 10?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn