Heim  >  Artikel  >  Web-Frontend  >  Wie kann ich in JavaScript überprüfen, welcher Browser die aktuell ausgeführte Umgebung ist?

Wie kann ich in JavaScript überprüfen, welcher Browser die aktuell ausgeführte Umgebung ist?

王林
王林nach vorne
2023-09-04 19:37:021271Durchsuche

Wie kann ich in JavaScript überprüfen, welcher Browser die aktuell ausgeführte Umgebung ist?

Laufzeitumgebung ist die Umgebung, in der Code ausgeführt wird. Es teilt Ihrem Code mit, auf welche globalen Objekte er zugreifen kann, und beeinflusst auch seine Ergebnisse. JavaScript-Code kann in verschiedenen Arten von Umgebungen ausgeführt werden, darunter Node.js, Service Worker oder Webbrowser. Um mit dem Codieren mit JavaScript zu beginnen, müssen Sie also keine zusätzliche Software installieren. Jeder Webbrowser verfügt über eine JavaScript-Engine. Sie können das von Ihnen geschriebene Skript einfach in jedem Browser ausführen, es stellt jedoch sicher, dass es allen Regeln der ECMAScript-Funktionalität (ES6) entspricht.

Hier erkennen wir, in welcher Laufzeitumgebung unser Code ausgeführt wird. In Node.js geschriebener JavaScript-Code kann auch in jeder Umgebung ausgeführt werden, sei es eine Browserumgebung, eine Service Worker-Umgebung oder die Node.js-Umgebung selbst. Wenn Sie Code in einer anderen Umgebung ausführen, müssen Sie alle Anforderungen dieser Umgebung erfüllen.

Überprüfen Sie, ob die Laufzeitumgebung ein Browser ist.

Es gibt keine direkte Möglichkeit, zu überprüfen, ob eine Laufzeitumgebung ein Browser ist ein Stück Code. Um die Laufzeitumgebung zu überprüfen, müssen wir einige Bedingungen festlegen, die zu jeder Umgebung passen, und prüfen, in welcher Umgebung unser Code ausgeführt wird. 一段代码是不是浏览器没有直接的方法。因此,要检查运行时环境,我们必须设置一些条件来匹配每个环境,并检查我们的代码在哪个环境中运行。

Syntax

Das Folgende ist die Syntax, um zu überprüfen, ob die aktuell laufende Umgebung ein Browser ist -

type of window === "object"

Wenn die obige Anweisung „true“ zurückgibt, ist die aktuelle laufende Umgebung ein Browser, andernfalls nicht.

Algorithmus

  • Schritt 1 – Bedingungstyp des Fensters === „Objekt“ prüfen.
  • SCHRITT 2 – Wenn true zurückgegeben wird, wird eine Meldung angezeigt, da die aktuelle Laufzeitumgebung ein Fenster ist.
  • SCHRITT 2 – Wenn false zurückgegeben wird, wird eine Meldung angezeigt, da die aktuelle Laufzeitumgebung kein Fenster ist.

Beispiel

Im folgenden Beispiel prüfen wir, ob die aktuelle Laufumgebung ein Browser ist.

<!DOCTYPE html>
<html>
<body>
   <div>
   <h2>Check if the Current Runtime Environment is Browser</h2>
   <p>Click the below button to know if the runtime environment is browser or not</p>
   <button onclick = "isBrowser()"> Check Runtime Environment </button>
   <p id="result1"></p>
   <p id="result2"></p>
   </div>
   <script>
      function isBrowser() {
         var text="Runtime environment";

         // Check if the runtime environment is a Browser
         if (typeof window === "object") {
            document.getElementById("result1").innerHTML = text + " is Browser";
         } else {
            document.getElementById("result2").innerHTML = text + " is NOT Browser";
         }
      }
   </script>
</body>
</html>

Überprüfen Sie verschiedene Laufzeitumgebungen

Jede Umgebung hat unterschiedliche Bedingungen.

  • Für Browserumgebungen sollte der Fenstertyp „Objekt“ sein.

  • Für die node.js-Umgebung müssen wir zunächst zwei Bedingungen prüfen: Überprüfen Sie, ob der Prozesstyp „Objekt“ und der Anforderungstyp „Funktion“ ist.

  • Nur wenn beide Bedingungen zutreffen, ist die Umgebung node.js Umwelt .

  • Für Service-Worker-Umgebung prüfen wir, ob der Typ des importierten Skripts gleich „Funktion“ ist, und wenn es gleich einer Funktion ist, dann ist nur diese Umgebung eine Service-Worker-Umgebung.

Syntax

Das Folgende ist die Syntax zum Überprüfen der Laufzeitumgebung –

// Condition if Runtime Environment is Node.js
typeof process === "object" &&typeof require === "

// Condition if Runtime Environment is Service Worker
typeof importScripts === "function

// Condition if Runtime Environment is Browser
typeof window === "object"

Algorithmus

  • Schritt 1 – Zuerst prüfen wir, ob die Laufzeitumgebung Node.js ist. Bei „true“ wird die richtige Meldung angezeigt.
  • Schritt 2 – Als nächstes prüfen wir, ob die aktuelle Laufzeitumgebung ein Service Worker ist. Bei „true“ wird die richtige Meldung angezeigt.
  • Schritt 3 – Abschließend prüfen wir, ob es sich bei der Laufzeitumgebung um einen Browser handelt. Bei „true“ wird die richtige Meldung angezeigt.

Beispiel

Mit dem folgenden Code können wir die Laufzeitumgebung des Programms überprüfen.

<!DOCTYPE html>
<html>
<body>
   <div>
   <h2>Check the Current Runtime Environment</h2>
   <p>Click the below button to know the runtime environment</p>
   <button onclick = "isBrowser()"> Check Runtime Environment </button>
   <p id="result1"></p>
   <p id="result2"></p>
   <p id="result3"></p>
   </div>
   <script>
      function isBrowser() {
         var text="Runtime environment";

         // Check if the runtime environment is Node.js
         if (typeof process === "object" &&typeof require === "function") {
            document.getElementById("result1").innerHTML = text + " is node.js"; }

            // Check if the runtime environment is a Service worker

            if (typeof importScripts === "function") {
               document.getElementById("result2").innerHTML = text + " is service worker";
            }

            // Check if the runtime environment is a Browser
            if (typeof window === "object") {
               document.getElementById("result3").innerHTML = text + " is Browser";
            }
         }
   </script>
</body>
</html>

Nachdem Sie auf die Schaltfläche „Laufzeitumgebung prüfen“ geklickt haben, zeigt der Bildschirm die Ausgabe basierend auf der Umgebung an, in der das Programm ausgeführt wird.

Diese Funktion von JavaScript ermöglicht es Ihnen, Code in jeder Umgebung zu schreiben und ihn in jeder anderen Umgebung auszuführen, insbesondere in einem Webbrowser, während Sie Webseiten verwenden, die nur in einem Webbrowser ausgeführt werden.

Hinweis – Der hier verwendete Methodentyp liefert uns den Datentyp der Variablen, Funktion oder Methode, genau wie er die Ausgabe in Form einer Zeichenfolge, Zahl, eines Objekts, einer Funktion oder eines anderen Datentyps liefert.

Das obige ist der detaillierte Inhalt vonWie kann ich in JavaScript überprüfen, welcher Browser die aktuell ausgeführte Umgebung ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen