Umgebungsvariablen: eine sehr kurze Einführung in die JS-Entwicklung
Dieser Artikel soll eine kurze Untersuchung von Umgebungsvariablen für mich selbst sein, daher der knappe Stil
Die Grundlagen
- Das Terminal ist eine App, die eigentlich ein Terminal-Emulator ist
- Wir verwenden das Terminal, um mit der Shell zu interagieren
- Die Shell kann Prozesse erzeugen, beispielsweise ein Javascript-Programm mithilfe einer anderen App, z. B. node
- z.B. Shell -> Knoten -> index.js
- Wenn wir das Terminal öffnen, wird eine neue Sitzung in der Shell erstellt
- Diese Sitzung verfügt über Variablen, die ihr zugeordnet werden können (z. B. gibt echo $USER den Namen des aktuellen Benutzers aus)
Knoten
Im Knoten erfolgt der Zugriff auf Umgebungsvariablen über die globale Datei „process.env“
console.log(process.env.USER); // username
- Anwendungen greifen normalerweise über Umgebungsvariablen auf Geheimnisse oder konfigurationsbezogene Daten zu
- z.B. process.env.DB_CONNECTION
- Dies ist hilfreich, da wir Geheimnisse geheim halten wollen und nicht jeder Benutzer die gleichen Konfigurationsanforderungen hat – dies ermöglicht eine bessere Entkopplung von Logik und Konfiguration
Methoden zum Laden von Variablen
Es gibt verschiedene Möglichkeiten, wie wir diese Variablen unseren Programmen zur Verfügung stellen können.
(1) Bereitstellung über die Befehlszeile:
Ganz einfach – rufen Sie einfach den Befehl mit der Variablen in der Befehlszeile auf.
DB_CONNECTION="postgresql://username:password@host:port/database_name" node index.js
(2) Speichern in einer .env-Datei
.env-Dateien bestehen aus SCHLÜSSEL und WERTEN, die durch ein Gleichheitszeichen getrennt sind.
DB_CONNECTION="postgresql://username:password@host:port/database_name"
Diese Dateien sind allgemein verbreitet und es gibt verschiedene Möglichkeiten, sie Ihrer Anwendung zur Verfügung zu stellen.
direnv
Verwenden Sie ein Tool wie direnv, das Variablen aus einer Datei lädt und sie in der Shell verfügbar macht; Dies wird normalerweise global installiert.
Standardmäßig sucht direnv nach einer .envrc-Datei, kann aber auch .env verwenden. Informationen zur entsprechenden Konfiguration finden Sie hier.
dotenv
Verwenden Sie ein Tool wie dotenv, das Variablen aus einer Datei lädt und sie in process.env verfügbar macht.
direnv vs dotenv
Für jede Methode gibt es Vor- und Nachteile.
Die Verwendung von direnv ist sprachunabhängig und bedeutet eine Abhängigkeit weniger, aber es bedeutet auch, dass Verbraucher Ihrer Anwendung ihre eigene Möglichkeit zum Laden von Umgebungsvariablen benötigen, wenn sie direnv nicht verwenden;
Durch die Verwendung von dotenv wird sichergestellt, dass Verbraucher der Anwendung problemlos eine .env-Datei verwenden können, es wird jedoch ein Paket hinzugefügt, nur um etwas zu tun, was die Shell nativ tun kann.
Knotenflagge
Node bietet seit kurzem Unterstützung (v20.6.0) für die direkte Verwendung von .env-Dateien.
Eine Flagge muss verwendet werden
node --env-file=.env index.js
Wie bei dotenv wird dadurch der Inhalt von .env in process.env verfügbar gemacht.
Zusammenfassung
- Umgebungsvariablen sind native Technologien der Shell
- Es gibt verschiedene Möglichkeiten, sie zu laden – direkt, direnv, dotenv, node
- direnv lädt Variablen in Ihre Shell, aber dotenv und node stellen sie Ihrer Anwendung nur über process.env zur Verfügung
- Wenn Sie Node verwenden, sollten Sie sich wahrscheinlich für die Verwendung des neuen Flags --env-file entscheiden
Das obige ist der detaillierte Inhalt vonUmgebungsvariablen: eine sehr kurze Einführung in die JS-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Der Umfang von JavaScript bestimmt den Zugangsumfang von Variablen, die in globale, Funktions- und Blockebene unterteilt sind. Der Kontext bestimmt die Richtung davon und hängt von der Funktionsaufrufmethode ab. 1. Scopes umfassen globaler Umfang (überall zugänglich), Funktionsumfang (nur innerhalb der Funktion gültig) und Blockebene (LET und const sind innerhalb von {} gültig). 2. Der Ausführungskontext enthält das variable Objekt, die Bereichskette und die Werte davon. Dies weist auf globale oder undefinierte in der normalen Funktion hin, die Methode richtet sich auf das Anrufobjekt, der Konstruktor auf das neue Objekt und kann auch explizit durch Anruf/Anwendung/Bindung angegeben werden. 3.. Verschluss bezieht sich auf Funktionen, die auf externe Bereiche zugreifen und sich erinnern. Sie werden häufig zur Kapselung und zum Cache verwendet, können aber verursachen

Es gibt zwei Kernmethoden, um den ausgewählten Optionsknopfwert zu erhalten. 1. Verwenden Sie QuerySelector, um das ausgewählte Element direkt zu erhalten, und verwenden Sie die Eingabe [name = "Your-Radio-Name"]: Überprüfter Selektor, um das ausgewählte Element zu erhalten und das Wertattribut zu lesen. Es ist für moderne Browser geeignet und hat einen präzisen Code. 2. Verwenden Sie das Dokument. Darüber hinaus müssen Sie auf die Schreibweise des Namensattributs, die Behandlung von nicht ausgewählten Situationen und die dynamische Belastung des Inhalts achten

Die Kompositionapi in VUE3 eignet sich besser für komplexe Logik- und Typableitung, und Optionsapi eignet sich für einfache Szenarien und Anfänger. 1. Optionsapi organisiert Code nach Optionen wie Daten und Methoden und hat eine klare Struktur, aber komplexe Komponenten werden fragmentiert. 2. Die Zusammensetzung verwendet ein Setup, um die verwandte Logik zu konzentrieren, die der Wartung und Wiederverwendung förderlich ist. 3. Compositionapi realisiert konfliktfreie und parameterizierbare logische Wiederverwendung durch komponierbare Funktionen, was besser ist als Mixin; 4. COMPOSECTI hat eine bessere Unterstützung für Typscript und eine genauere Typableitung; 5. Es gibt keinen signifikanten Unterschied in der Leistung und des Verpackungsvolumens der beiden; 6.

Das Typ -Casting ist das Verhalten der automatischen Konvertierung eines Werttyps in einen anderen Typ in JavaScript. Zu den allgemeinen Szenarien gehören: 1. Bei Verwendung von Operatoren, wenn eine Seite eine String ist, wird die andere Seite ebenfalls in eine Zeichenfolge konvertiert, wie z. B. '5' 5. Das Ergebnis ist "55"; 2. Im booleschen Kontext werden nicht-Boolenische Werte implizit in boolesche Typen wie leere Zeichenfolgen, 0, Null, undefined usw. konvertiert, die als falsch angesehen werden; 3.. Null nimmt an numerischen Operationen teil und wird in 0 umgewandelt, und undefined wird in NAN umgewandelt. 4. Die durch implizite Umwandlung verursachten Probleme können durch explizite Konvertierungsfunktionen wie Nummer (), String () und Boolean () vermieden werden. Das Beherrschen dieser Regeln hilft

Es gibt einen wesentlichen Unterschied zwischen den Webworkers und Javatheads von JavaScript in der gleichzeitigen Verarbeitung. 1. JavaScript nimmt ein Single-Thread-Modell an. Webworker ist ein unabhängiger Thread, der vom Browser bereitgestellt wird. Es ist geeignet, zeitaufwändige Aufgaben auszuführen, die die Benutzeroberfläche nicht blockieren, aber das DOM nicht bedienen können. 2. Java unterstützt echtes Multithreading von der Sprachebene, die über die Thread-Klasse erstellt wurde und für eine komplexe gleichzeitige Logik und die serverseitige Verarbeitung geeignet ist. 3.. Webworker verwenden Postmessage (), um mit dem Hauptfaden zu kommunizieren, der sehr sicher und isoliert ist. Java -Threads können Speicher teilen, sodass Synchronisierungsprobleme aufmerksam werden müssen. V.

Formatdaten in JavaScript können durch native Methoden oder Bibliotheken von Drittanbietern implementiert werden. 1. Verwenden Sie natives Datumsobjektstich: Holen Sie sich das Datumsteil durch Getvollerweise, GetMonth, getDate und andere Methoden und spleifen Sie es manuell in yjyy-mm-dd und andere Formate, was für leichte Bedürfnisse geeignet ist und nicht auf Bibliotheken von Drittanbietern beruht. 2. Verwenden Sie die Tolocaledatestring -Methode: Sie können wie ein MM/DD/YYYY -Format gemäß den lokalen Gewohnheiten ausgeben, unterstützen Sie mehrsprachig, aber das Format kann aufgrund verschiedener Umgebungen inkonsistent sein. 3.. Verwenden Sie Bibliotheken von Drittanbietern wie Day.js oder Date-Fns: Bietet prägnante Syntax- und Richfunktionen, die für häufige Operationen geeignet sind oder wenn Erweiterbarkeit erforderlich ist, wie z. B. DayJS ()

Initialisieren Sie das Projekt und erstellen Sie Package.json; 2. Erstellen Sie einen Eintragskriptindex.js mit Shebang; 3.. Registrieren Sie Befehle über Bin Fields in package.json; 4. Verwenden Sie Yargs und andere Bibliotheken, um die Befehlszeilenparameter zu analysieren. 5. Verwenden Sie NPMLink Local Test; 6. Hilfe, Version und Optionen hinzufügen, um die Erfahrung zu verbessern. 7. optional über NPMPublish veröffentlichen; 8. optional automatischen Abschluss mit Yargs; Erstellen Sie schließlich praktische CLI -Tools durch angemessene Struktur und Benutzererfahrungsdesign, erstellen Sie Automatisierungsaufgaben oder verteilen Sie Widgets und enden Sie sie mit vollständigen Sätzen.

Verwenden Sie document.createelement (), um neue Elemente zu erstellen; 2. Anpassen von Elementen durch TextContent, Classlist, SetAttribute und andere Methoden; 3.. Verwenden Sie appendChild () oder flexibler append () -Methoden, um dem DOM Elemente hinzuzufügen. V. Der vollständige Vorgang besteht darin, → Anpassen → Add zu erstellen, und Sie können den Seiteninhalt dynamisch aktualisieren.
