Maison >interface Web >js tutoriel >Comment vérifier quel navigateur est l'environnement d'exé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.
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. 一段代码是不是浏览器没有直接的方法。因此,要检查运行时环境,我们必须设置一些条件来匹配每个环境,并检查我们的代码在哪个环境中运行。
Voici la syntaxe permettant de vérifier si l'environnement d'exécution actuel est un navigateur -
type of window === "object"
Si l'instruction ci-dessus renvoie vrai, l'environnement d'exécution actuel est un navigateur, sinon ce n'est pas le cas.
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>
Chaque environnement a des conditions différentes.
Pour les environnements de navigateur, 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.
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"
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>
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!