Zusammenfassung der Unterschiede zwischen globalen Objekten in Node.js und Browsern

Zusammenfassung der Unterschiede zwischen globalen Objekten in Node.js und Browsern

In Node.js ist eine .js-Datei ein vollständiger Bereich (Modul). Daher sind die von var deklarierten Variablen nur in der aktuellen .js-Datei gültig, nicht global. Das globale Objekt ist unabhängig von allen .js (Modulen).

Das globale Objekt der obersten Ebene im Browser ist „window“, und mit „var“ deklarierte Variablen sind standardmäßig an das Fensterobjekt gebunden.

1. Definition des globalen Objekts

Konzept: Ein Objekt, auf das von überall im Programm zugegriffen werden kann, wird als globales Objekt bezeichnet. Die Eigenschaften eines Objekts werden globale Variablen genannt.

2. Zusammenfassung der globalen Variablen in NodeJS

Hier fassen wir zusammen, welche globalen Variablen wir häufig in nodejs verwenden

2.1 Pufferklasse

Der Puffer, den wir auch „Puffer“ nennen können, hat die Funktion, einen Bereich im Speicher zu öffnen, um Binärdaten zu speichern.

2.2 __dirname

__dirname, gibt den absoluten Pfad des Ordners (Verzeichnisses) zurück, in dem sich die aktuelle Moduldatei nach dem Parsen befindet.

Denken Sie daran, dass __dirname nicht wirklich eine globale Variable ist.

2.3 __Dateiname

__filename, gibt den absoluten Pfad der aktuellen Moduldatei nach der Analyse zurück.

Denken Sie daran, dass __filename nicht wirklich eine globale Variable ist.

2.4 Modul

Denken Sie daran, dass das Modul nicht wirklich eine globale Variable ist.

2.5 erfordern()

Denken Sie daran, dass require() nicht wirklich eine globale Variable ist.

2.6 Exporte

Bedenken Sie, dass Exporte keine wirklich globalen Variablen sind.

2.7 setImmediate und clearImmediate

2.8 setTimeout und clearTimeout

2.9 setInterval und clearInterval

2.10-Konsole

Zum Drucken in die Standardausgabe und in die Standardfehlerausgabe

2.11 Prozess

Das Prozessobjekt stellt Informationen zum aktuellen Node.js-Prozess bereit und ermöglicht die Steuerung darüber.

2.12 URL

URL-Dienstprogramme zur URL-Verarbeitung und -Analyse

2.13 Ereignisse

Das Ereignismodul ist die Implementierung des „Publish/Subscribe“-Modells von Node. Über dieses Modul übergibt ein Objekt Nachrichten an ein anderes Objekt. Dieses Modul stellt einen Konstruktor über das EventEmitter-Attribut bereit.

3. globalDies

3.1 Was ist globalThis?

Die Sprache JS wird zunehmend in verschiedenen Umgebungen verwendet. Es ist nicht nur auf den gängigsten Browsern, sondern auch auf Servern, Smartphones und sogar Roboterhardware lauffähig.

Jede Umgebung verfügt über ein eigenes Objektmodell und bietet eine andere Syntax für den Zugriff auf globale Objekte. Beispielsweise kann in einem Webbrowser über „Fenster“, „Selbst“ oder „Frames“ auf das globale Objekt zugegriffen werden. In Node.js gibt es diese Eigenschaften jedoch nicht und stattdessen müssen globale Eigenschaften verwendet werden.

global: Ziel ist es, die zunehmend fragmentierten Methoden zum Zugriff auf globale Objekte durch die Definition einer standardmäßigen globalen Eigenschaft zu konsolidieren. Dieser Vorschlag wurde in den ES2020-Standard aufgenommen. Alle gängigen Browser, einschließlich Chrome 71+, Firefox 65+ und Safari 12.1+, unterstützen diese Funktion bereits. Sie können es auch in Node.js 12+ verwenden.

Inhaltserweiterung:

NodeJS - globales Objekt

Funktion global() {
    // Globale Variablen. __filename stellt den Dateinamen des aktuell ausgeführten Skripts dar.
    console.info('__filename: ' + __filename ); // __filename: D:\github\nodejs-test\requestHandlers.js

    // Globale Variablen. __dirname gibt das Verzeichnis an, in dem sich das aktuell ausgeführte Skript befindet.
    console.info('__dirname : ' + __dirname ); // __dirname : D:\github\nodejs-test

    // Globale Funktion. setTimeout(cb, ms) Die globale Funktion führt die angegebene Funktion (cb) nach der angegebenen Anzahl von Millisekunden (ms) aus. setTimeout() führt die angegebene Funktion nur einmal aus. Gibt einen Handle-Wert zurück, der den Timer darstellt.
    setzeTimeout(Funktion () {
        console.info('setTimeout: Ich führe es nur einmal aus.');
    }, 2000);

    // Globale Funktion. Die globale Funktion clearTimeout( t ) wird verwendet, um einen zuvor mit setTimeout() erstellten Timer zu stoppen. Der Parameter t ist der von der Funktion setTimeout() erstellte Timer.
    lass t = setTimeout(Funktion () {
        console.info('clearTimeout: Ich kann es nicht ausführen.');
    }, 2000);
    clearTimeout(t); // Timer löschen // Globale Funktion. Die globale Funktion setInterval(cb, ms) führt die angegebene Funktion (cb) nach der angegebenen Anzahl von Millisekunden (ms) aus.
    lass tt = setzeIntervall(Funktion () {
        console.info('setInterval: Ich führe es alle 2 Sekunden aus.');
    }, 2000);

    // Globale Funktion. Die Methode setInterval() ruft die Funktion wiederholt auf, bis clearInterval() aufgerufen oder das Fenster geschlossen wird.
    setzeTimeout(Funktion () {
        clearInterval(tt); // Timer löschen }, 5000);

    // Globales Objekt. Konsole
    console.info('Konsole: Ich gehöre auch zu global.');

    // Globale Variablen. Attribute des globalen Objekts. Verfahren
    console.info('aktuelles Verzeichnis verarbeiten: ' + process.cwd()); // Aktuelles Verzeichnis ausgebenconsole.info('aktuelle Version verarbeiten: ' + process.version); // Aktuelle Version ausgebenconsole.info('Plattforminformationen verarbeiten: ' + process.platform); // Plattforminformationen ausgeben}

Ausgabe:

__Dateiname: D:\github\nodejs-test\requestHandlers.js
__dirname : D:\github\nodejs-test
Konsole: Ich gehöre auch zu Global.
Prozess Aktuelles Verzeichnis: D:\github\nodejs-test
Prozess Aktuelle Version: v10.15.3
Prozessplattforminformationen: win32
setTimeout: Ich führe es nur einmal aus.
setInterval: Ich führe es alle 2 Sekunden aus.
setInterval: Ich führe es alle 2 Sekunden aus.

Damit ist dieser Artikel über die Unterschiede zwischen globalen Objekten in NodeJS und Browsern abgeschlossen. Weitere Informationen zu globalen Objekten in NodeJS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Nodejs-Lernhinweise: Globale Objekte

<<:  Sechs wichtige Selektoren in CSS (merken Sie sie sich in drei Sekunden)

>>:  Der Prozess der Installation von MySQL 8.0.26 auf CentOS7

Artikel empfehlen

Docker verwendet ein einzelnes Image zum Zuordnen zu mehreren Ports

brauchen: Der Ressourcenserver der offiziellen We...

vue+element-ui implementiert die Kopfnavigationsleistenkomponente

In diesem Artikel wird der spezifische Code von v...

Zusammenfassung der Verwendung von clipboard.js

Inhaltsverzeichnis (1) Einleitung: (2) Zum Kopier...

So implementieren Sie das Beobachtermuster in JavaScript

Inhaltsverzeichnis Überblick Anwendungsszenarien ...

Analysieren Sie das Arbeitsprinzip von Tomcat

SpringBoot ist wie eine riesige Python, die sich ...

jQuery implementiert den Tabellen-Paging-Effekt

In diesem Artikel wird der spezifische Code von j...

So verwenden Sie DQL-Befehle zum Abfragen von Daten in MySQL

In diesem Artikel zeigt Ihnen der Blogger die häu...

Einführung in geplante Aufgaben im Linux-System

Inhaltsverzeichnis 1. Planaufgaben anpassen 2. Ze...

Schritte zur vollständigen Deinstallation des Docker-Images

1. docker ps -a zeigt den laufenden Image-Prozess...

MySQL verwendet SQL-Anweisungen zum Ändern von Tabellennamen

In MySQL können Sie die SQL-Anweisung „rename tab...