Maison > interface Web > js tutoriel > Comment vérifier quel navigateur est l'environnement d'exécution actuel en JavaScript ?

Comment vérifier quel navigateur est l'environnement d'exécution actuel en JavaScript ?

王林
Libérer: 2023-09-04 19:37:02
avant
1336 Les gens l'ont consulté

Comment vérifier quel navigateur est lenvironnement dexécution actuel en JavaScript ?

Environnement d'exécution est l'environnement dans lequel le code est exécuté. Il indique à votre code à quels objets globaux il peut accéder et affecte également ses résultats. Le code JavaScript peut s'exécuter dans différents types d'environnements, dont Node.js, Service Workers ou navigateurs Web. Ainsi, pour commencer à coder avec JavaScript, vous n’avez pas besoin d’installer de logiciel supplémentaire. Chaque navigateur Web est livré avec un moteur JavaScript. Vous pouvez simplement exécuter le script que vous écrivez dans n'importe quel navigateur, mais cela garantit qu'il suit toutes les règles de la fonctionnalité ECMAScript (ES6).

Ici, nous allons détecter dans quel environnement d'exécution notre code s'exécute. Le code JavaScript écrit dans Node.js peut également s'exécuter dans n'importe quel environnement, qu'il s'agisse d'un environnement de navigateur, d'un environnement Service Worker ou de l'environnement Node.js lui-même. Lorsque vous exécutez du code dans un environnement différent, vous devez répondre à toutes les exigences de cet environnement.

Vérifiez si l'environnement d'exécution est un navigateur

Il n'existe aucun moyen direct de vérifier si un environnement d'exécution est un navigateur un morceau de code. Ainsi, pour vérifier l'environnement d'exécution, nous devons définir certaines conditions adaptées à chaque environnement et vérifier dans quel environnement notre code s'exécute. 一段代码是不是浏览器没有直接的方法。因此,要检查运行时环境,我们必须设置一些条件来匹配每个环境,并检查我们的代码在哪个环境中运行。

Syntaxe

Voici la syntaxe permettant de vérifier si l'environnement d'exécution actuel est un navigateur -

type of window === "object"
Copier après la connexion

Si l'instruction ci-dessus renvoie vrai, l'environnement d'exécution actuel est un navigateur, sinon ce n'est pas le cas.

Algorithme

  • Étape 1< /strong> - Vérifiez le type de condition de la fenêtre === "objet".
  • ÉTAPE 2 - Si true est renvoyé, un message s'affiche car l'environnement d'exécution actuel est une fenêtre.
  • ÉTAPE 2 - Si false est renvoyé, un message s'affiche car l'environnement d'exécution actuel n'est pas une fenêtre.

Exemple

Dans l'exemple ci-dessous, nous vérifions si l'environnement d'exécution actuel est un navigateur.

<!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>
Copier après la connexion

Vérifiez différents environnements d'exécution

Chaque environnement a des conditions différentes.

  • Pour les environnements de navigateur< /strong>, le type de fenêtre doit être égal à "objet".

  • Pour l'environnement node.js, nous devons d'abord vérifier 2 conditions : vérifier si le type de processus est "objet" et si le type de require est "fonction".

  • Seulement si les deux conditions sont vraies, l'environnement est node.js Environnement .

  • Pour Service Worker Environment, nous vérifions si le type du script importé est égal à "fonction" et lorsqu'il est égal à une fonction, alors seul cet environnement est un environnement de service worker.

Syntaxe

Ce qui suit est la syntaxe pour vérifier l'environnement d'exécution -

// 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"
Copier après la connexion

Algorithme

  • Étape 1 - Nous vérifions d'abord si l'environnement d'exécution est Node.js. Si c'est vrai, le message correct s'affiche.
  • Étape 2 - Ensuite, nous vérifions si l'environnement d'exécution actuel est un Service Worker. Si c'est vrai, le message correct s'affiche.
  • Étape 3 - Enfin, nous vérifions si l'environnement d'exécution est un navigateur. Si c'est vrai, le message correct s'affiche.

Exemple

Nous pouvons utiliser le code suivant pour vérifier l'environnement d'exécution du programme.

<!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>
Copier après la connexion

Après avoir cliqué sur le bouton "Vérifier l'environnement d'exécution", l'écran vous montrera le résultat en fonction de l'environnement dans lequel le programme s'exécute.

Cette fonctionnalité de JavaScript vous permet d'écrire du code dans n'importe quel environnement et de l'exécuter dans n'importe quel autre environnement différent, notamment dans un navigateur Web tout en utilisant des pages Web qui s'exécutent uniquement dans un navigateur Web.

Remarque - Le type de méthode utilisé ici nous donnera le type de données de la variable, de la fonction ou de la méthode, tout comme il donne la sortie sous forme de chaîne, de nombre, d'objet, de fonction ou tout autre type de type de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal