Maison interface Web js tutoriel Pourquoi vous devez éviter d'utiliser des variables globales dans le développement Web

Pourquoi vous devez éviter d'utiliser des variables globales dans le développement Web

Jun 04, 2018 am 10:13 AM
web Pourquoi 使用

Cette fois, je vais vous expliquer pourquoi vous devez éviter d'utiliser des variables globales dans le développement Web, et quelles sont les précautions à prendre pour éviter d'utiliser des variables globales dans le développement Web. Ce qui suit est un cas pratique, jetons un coup d'œil.

Les principaux problèmes causés par les variables globales sont les suivants : à mesure que la quantité de code augmente, trop de variables globales rendront le code difficile à maintenir et sujet aux bugs. Il n'y a pas de gros problème avec une ou deux variables globales. Il est presque impossible d'atteindre zéro variable globale (à moins que votre code JS ne soit connecté à un autre code JS et fasse simplement certaines choses de son côté. Cette situation est très rare, ce qui est très rare. ne veut pas dire qu'il n'y a pas de variable globale).

Si vous écrivez du code ES6, vous constaterez qu'il est difficile de créer une variable globale. À moins que vous n'écriviez explicitement window.globalVar = 'something', le mécanisme du module ES6 définit automatiquement la portée du fractionnement pour vous. rend le code que vous écrivez plus maintenable et plus sécurisé (les anciens JSers doivent déplorer que les développeurs front-end modernes soient si heureux).

S'il s'agit d'un code pré-ES6, il faut être prudent. Par exemple, les variables que vous déclarez sans utiliser var dans une fonction seront directement montées dans des variables globales (cela devrait être une connaissance de base de JS), donc la modularisation est généralement implémentée via IIFE, et une seule variable globale est exposée au monde extérieur (de Bien sûr, vous pouvez également utiliser des outils de gestion de modules tiers tels que RequireJS ou le chargeur de modules YUI pour réaliser la modularisation).

window.global = (function () {  var exportVar = {}; // ES5没有let和const,故用var
  // add method and variable to exportVar
  return exportVar;
})();
Copier après la connexion

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

Utiliser JS pour implémenter des opérations de chiffrement et de déchiffrement

Résumé du fonctionnement du tableau JS et de la méthode d'analyse

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La production de pages H5 nécessite-t-elle une maintenance continue? La production de pages H5 nécessite-t-elle une maintenance continue? Apr 05, 2025 pm 11:27 PM

La page H5 doit être maintenue en continu, en raison de facteurs tels que les vulnérabilités du code, la compatibilité des navigateurs, l'optimisation des performances, les mises à jour de sécurité et les améliorations de l'expérience utilisateur. Des méthodes de maintenance efficaces comprennent l'établissement d'un système de test complet, à l'aide d'outils de contrôle de version, de surveiller régulièrement les performances de la page, de collecter les commentaires des utilisateurs et de formuler des plans de maintenance.

Quels sont les avantages de la production de pages H5 Quels sont les avantages de la production de pages H5 Apr 05, 2025 pm 11:48 PM

Les avantages de la production de pages H5 comprennent: une expérience légère, une vitesse de chargement rapide et une amélioration de la rétention des utilisateurs. Compatibilité multiplateforme, pas besoin de s'adapter à différentes plates-formes, améliorant l'efficacité du développement. Flexibilité et mises à jour dynamiques, aucun audit requis, ce qui facilite la modification et la mise à jour du contenu. Les coûts de développement rentables et économiques que les applications natives.

Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Apr 05, 2025 pm 05:51 PM

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

Pourquoi un élément div spécifique dans le navigateur Edge ne s'affiche-t-il pas? Comment résoudre ce problème? Pourquoi un élément div spécifique dans le navigateur Edge ne s'affiche-t-il pas? Comment résoudre ce problème? Apr 05, 2025 pm 08:21 PM

Comment résoudre le problème d'affichage causé par les feuilles de style d'agent utilisateur? Lorsque vous utilisez le navigateur Edge, un élément DIV du projet ne peut pas être affiché. Après avoir vérifié, j'ai posté ...

Pourquoi avez-vous besoin d'appeler Vue.User (VUerouter) dans le fichier index.js dans le dossier du routeur? Pourquoi avez-vous besoin d'appeler Vue.User (VUerouter) dans le fichier index.js dans le dossier du routeur? Apr 05, 2025 pm 01:03 PM

La nécessité d'enregistrer VUerouter dans le fichier index.js dans le dossier du routeur Lors du développement d'applications VUE, vous rencontrez souvent des problèmes de configuration de routage. Spécial...

JS peut-il fonctionner sans H5? JS peut-il fonctionner sans H5? Apr 06, 2025 am 09:06 AM

JavaScript est-il disponible pour s'exécuter sans HTML5? Le moteur JavaScript lui-même peut fonctionner indépendamment. L'exécution de JavaScript dans un environnement de navigateur dépend de HTML5 car il fournit l'environnement standardisé requis pour charger et exécuter du code. Les API et les fonctionnalités fournies par HTML5 sont cruciales pour les frameworks et bibliothèques JavaScript modernes. Sans environnements HTML5, de nombreuses fonctionnalités JavaScript sont difficiles à implémenter ou ne peuvent pas être implémentées.

Pourquoi les marges négatives ne prennent-elles pas effet dans certains cas? Pourquoi les marges négatives ne prennent-elles pas effet dans certains cas? Apr 05, 2025 pm 04:09 PM

Pourquoi les marges négatives ne prennent-elles pas effet dans certains cas? Lorsque vous utilisez CSS pour disposer des pages Web, vous rencontrez souvent des marges négatives (négatifs ...

Comment implémenter un thème personnalisé en remplaçant la variable SCSS de l'élément? Comment implémenter un thème personnalisé en remplaçant la variable SCSS de l'élément? Apr 05, 2025 pm 01:45 PM

Comment implémenter un thème personnalisé en remplaçant la variable SCSS de l'élément? Utilisation d'élément ...

See all articles