Heim > Web-Frontend > Front-End-Fragen und Antworten > Was ist der Unterschied zwischen Knotenumgebung und Browserumgebung?

Was ist der Unterschied zwischen Knotenumgebung und Browserumgebung?

青灯夜游
Freigeben: 2022-03-22 17:33:50
Original
2854 Leute haben es durchsucht

Unterschiede: 1. Dies zeigt im Knoten auf global, im Browser jedoch auf das Fenster. 2. Der Knoten verwendet den CommonJS-Standard, während der Browser den ES-Module-Standard verwendet. 3. JS im Browser kann das DOM bedienen. aber nicht im Knoten; 4. E/A-Lese- und Schreibvorgänge sind unterschiedlich. 5. Die Modulbelastung ist unterschiedlich.

Was ist der Unterschied zwischen Knotenumgebung und Browserumgebung?

Die Betriebsumgebung dieses Tutorials: Windows7-System, NodeJS-Version 12.19.0, DELL G3-Computer.

Der Unterschied zwischen der Knotenumgebung und der Browserumgebung

1. Der Sinn davon in der globalen Umgebung

Im Knoten zeigt dies auf global und im Browser zeigt dies auf Fenster. Aus diesem Grund ist der Unterstrich definiert am Anfang. root;

 var root = typeof self == 'object' && self.self === self && self ||
       typeof global == 'object' && global.global === global && global ||
       this;
Nach dem Login kopieren

 Und es kapselt viele APIs unter dem Fenster im Browser, wie z. B. Warnung, Dokument, Standort, Verlauf usw. und vieles mehr. Wir können xxx(); oder window.xxx(); nicht in der Knotenumgebung verwenden. Da es sich bei diesen APIs um eine Kapselung auf Browserebene handelt, sind sie in reinem JavaScript nicht verfügbar. Natürlich bietet node auch viele knotenspezifische APIs.

2. Modulstandards

Node.js verwendet das CommonJS-Modulsystem, und in Browsern beginnen wir, den ES-Modulstandard zu implementieren.

In der Praxis bedeutet das, dass Sie require() vorübergehend in Node.js verwenden und im Browser importieren.

3. DOM-Betrieb

In den meisten Fällen betreibt js im Browser das DOM direkt oder indirekt (einige virtuelle DOM-Bibliotheken und Frameworks). Denn der Code im Browser funktioniert hauptsächlich in der Präsentationsschicht. Aber Node ist eine serverseitige Technologie. Es gibt keine Startseite, daher werden wir das DOM nicht im Knoten betreiben.

4. E/A-Lesen und Schreiben

Im Gegensatz zu Browsern müssen wir Dateien wie andere serverseitige Technologien lesen und schreiben. Und der Browser (um die Kompatibilität sicherzustellen) hat große Probleme, wenn er ein lokales Bild direkt auf der Seite öffnen möchte (sagen Sie mir nicht, dass es sich nicht um einen einfachen, relativen Pfad handelt ... Probieren Sie es einfach aus und Sie werden es wissen oder finden eine Bibliothek Entweder ein Binärstrom oder die Netzwerkadresse wird beim Hochladen angezeigt, warum müssen die Leute sonst eine js-Bibliothek erstellen?) Und das alles geschieht mit einem Knoten.

5. Modulladen

JavaScript hat die Eigenschaft, dass die native API, die keine Paketreferenzen bereitstellt, alle zu ladenden Dinge auf einmal ausführt. Hier kommt es auf Ihre Abschlussfähigkeiten an. Alle verwendeten Dinge sind zusammen, es gibt kein Teilen und Herrschen und es gibt keine Logik oder Wiederverwendbarkeit. Wenn die Seite oder Website einfach ist, können wir natürlich einige AMD- und CMD-JS-Bibliotheken (wie requireJS und seaJS) verwenden, um dies zu erreichen. Tatsächlich tun dies viele große Websites.

  Die CMD-Modullade-API wird in nodeJS bereitgestellt. Wenn Sie seaJS verwendet haben, sollten Sie schnell loslegen.

 Node bietet auch npm, ein Paketverwaltungstool, mit dem wir unsere Trinkbibliotheken effektiver und bequemer verwalten können

  Natürlich hat ES6 auf der Browserseite auch diesen Zusatz, ich glaube, dass er in Zukunft besser sein wird. . .

Weitere Informationen zu Knoten finden Sie unter: nodejs-Tutorial!

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage