Modèle de module JavaScript expliqué en détail
Cet article présente principalement le mode module JavaScript et analyse en détail les concepts, fonctions, extensions et autres techniques de fonctionnement pertinents du mode module js sous forme d'exemples. J'espère qu'il pourra s'y référer. aider tout le monde.
Il n'y a pas de concept de classe en JS, alors comment refléter les attributs publics et privés de l'objet La réponse est le modèle de module ?
Il existe une fonctionnalité importante dans JS : la fonction anonyme. Grâce à l'établissement et à l'exécution de la fonction anonyme, le code de la fonction anonyme forme une fermeture, formant ainsi, encapsulant et contrôlant les caractéristiques privées et publiques d'un. objet pour éviter la prolifération de variables globales et les conflits avec d’autres scripts.
(function () { // 所有的变量和函数只在这个范围内有效 // 仍然可以使用全局变量 }());
Modèle de modèle de module classique
var myNamespace = (function () { var myPrivateVar, myPrivateMethod; // A private counter variable myPrivateVar = 0; // A private function which logs any arguments myPrivateMethod = function( foo ) { console.log( foo ); }; return { // A public variable myPublicVar: "foo", // A public function utilizing privates myPublicFunction: function( bar ) { // Increment our private counter myPrivateVar++; // Call our private method using bar myPrivateMethod( bar ); } }; })();
Grâce à la fermeture, vous pouvez voir que lorsque nous utilisons myNamespace, nous ne pouvons voir que les propriétés et méthodes de myPublic*, mais les propriétés et méthodes de myPrivate* ne sont pas accessibles directement.
Extension du mode de base
Importer des mixins
JS a une fonctionnalité importante appelée variables globales implicites , c'est-à-dire que chaque fois que l'interpréteur JS recherche une déclaration var pour une variable, si elle n'est pas trouvée, la variable est considérée comme une variable globale. Cela semble être une chose facile à faire lors de l'utilisation de variables globales dans les fermetures, mais en même temps, cela peut facilement provoquer une confusion dans le code. Heureusement, les fonctions anonymes peuvent également recevoir des paramètres, donc grâce au passage de paramètres, nous pouvons importer les variables globales que nous souhaitons utiliser dans la fonction anonyme, fournissant ainsi une méthode d'utilisation plus claire et plus propre.
(function ($, YAHOO) { // 这样就可以访问jQuery (as $) 和 YAHOO 库 }(jQuery, YAHOO));
Exportations de modules
Parfois, vous utilisez non seulement des variables globales, mais vous souhaitez également déclarer une variable globale de votre own. Ceci peut être facilement réalisé grâce à la valeur de retour de la fonction anonyme.
var MODULE = (function () { var my = {}, privateVariable = 1; function privateMethod() { // ... } my.moduleProperty = 1; my.moduleMethod = function () { // ... }; return my; }());
Extensions avancées
Sur la base du modèle de base ci-dessus, nous pouvons continuer à nous développer .
Augmentation
La limitation du mode module de base est que nous devons mettre le module entier dans un seul fichier. Ainsi, lorsque nous devons répartir un module sur plusieurs fichiers, que devons-nous faire ?
Une solution consiste à augmenter les modules. Nous entrons d'abord dans le module, puis ajoutons des méthodes d'attribut, puis sortons. L'exemple est le suivant
var MODULE = (function (my) { my.anotherMethod = function () { // added method... }; return my; }(MODULE));
Augmentation lâche
L'exemple ci-dessus nécessite d'abord un module, puis ajoute un nouveau un basé sur ses caractéristiques. Mais parfois, nous chargeons des scripts JS de manière asynchrone, nous avons donc besoin d'une méthode de création de module à faible couplage, qui peut être réalisée grâce à la structure suivante.
var MODULE = (function (my) { // add capabilities... return my; }(MODULE || {}));
Sous-modules
Vous pouvez créer des sous-modules basés sur le module. C'est très simple. comme suit :
MODULE.sub = (function () { var my = {}; // ... return my; }());
Jusqu'à présent, nous avons brièvement présenté le mode module En tant que mode JS le plus classique, ce mode est largement utilisé par divers frameworks JS. Cela rend votre code plus encapsulé, plus structuré et plus POO.
Recommandations associées :
Un mode module pour les compétences Javascript_YUI.Ext
Un mode module pour les compétences Javascript _javascript
Comment rendre le module js plus utile
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Le système d'exploitation Windows est l'un des systèmes d'exploitation les plus populaires au monde et sa nouvelle version Win11 a beaucoup attiré l'attention. Dans le système Win11, l'obtention des droits d'administrateur est une opération importante. Les droits d'administrateur permettent aux utilisateurs d'effectuer davantage d'opérations et de paramètres sur le système. Cet article présentera en détail comment obtenir les autorisations d'administrateur dans le système Win11 et comment gérer efficacement les autorisations. Dans le système Win11, les droits d'administrateur sont divisés en deux types : administrateur local et administrateur de domaine. Un administrateur local dispose de tous les droits d'administration sur l'ordinateur local

Explication détaillée de l'opération de division dans OracleSQL Dans OracleSQL, l'opération de division est une opération mathématique courante et importante, utilisée pour calculer le résultat de la division de deux nombres. La division est souvent utilisée dans les requêtes de bases de données. Comprendre le fonctionnement de la division et son utilisation dans OracleSQL est donc l'une des compétences essentielles des développeurs de bases de données. Cet article discutera en détail des connaissances pertinentes sur les opérations de division dans OracleSQL et fournira des exemples de code spécifiques pour référence aux lecteurs. 1. Opération de division dans OracleSQL

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

L'opérateur modulo (%) en PHP est utilisé pour obtenir le reste de la division de deux nombres. Dans cet article, nous discuterons en détail du rôle et de l'utilisation de l'opérateur modulo et fournirons des exemples de code spécifiques pour aider les lecteurs à mieux comprendre. 1. Le rôle de l'opérateur modulo En mathématiques, lorsqu'on divise un entier par un autre entier, on obtient un quotient et un reste. Par exemple, lorsque l’on divise 10 par 3, le quotient est 3 et le reste est 1. L'opérateur modulo est utilisé pour obtenir ce reste. 2. Utilisation de l'opérateur modulo En PHP, utilisez le symbole % pour représenter le module

Explication détaillée de la fonction d'appel système Linux system() L'appel système est une partie très importante du système d'exploitation Linux. Il fournit un moyen d'interagir avec le noyau système. Parmi elles, la fonction system() est l’une des fonctions d’appel système couramment utilisées. Cet article présentera en détail l’utilisation de la fonction system() et fournira des exemples de code correspondants. Concepts de base des appels système Les appels système sont un moyen permettant aux programmes utilisateur d'interagir avec le noyau du système d'exploitation. Les programmes utilisateur demandent au système d'exploitation en appelant des fonctions d'appel système

Explication détaillée de la commande curl de Linux Résumé : curl est un puissant outil de ligne de commande utilisé pour la communication de données avec le serveur. Cet article présentera l'utilisation de base de la commande curl et fournira des exemples de code réels pour aider les lecteurs à mieux comprendre et appliquer la commande. 1. Qu’est-ce que la boucle ? curl est un outil de ligne de commande utilisé pour envoyer et recevoir diverses requêtes réseau. Il prend en charge plusieurs protocoles, tels que HTTP, FTP, TELNET, etc., et fournit des fonctions riches, telles que le téléchargement de fichiers, le téléchargement de fichiers, la transmission de données, le proxy.

En tant que langage de programmation largement utilisé dans le domaine du développement de logiciels, le langage C est le premier choix de nombreux programmeurs débutants. L'apprentissage du langage C peut non seulement nous aider à acquérir des connaissances de base en programmation, mais également à améliorer nos capacités de résolution de problèmes et de réflexion. Cet article présentera en détail une feuille de route d'apprentissage du langage C pour aider les débutants à mieux planifier leur processus d'apprentissage. 1. Apprendre la grammaire de base Avant de commencer à apprendre le langage C, nous devons d'abord comprendre les règles de grammaire de base du langage C. Cela inclut les variables et les types de données, les opérateurs, les instructions de contrôle (telles que les instructions if,

Numpy est une bibliothèque de calcul scientifique Python qui fournit une multitude de fonctions et d'outils d'opération de tableau. Lors de la mise à niveau de la version Numpy, vous devez interroger la version actuelle pour garantir la compatibilité. Cet article présentera en détail la méthode de requête de version Numpy et fournira des exemples de code spécifiques. Méthode 1 : utilisez le code Python pour interroger la version Numpy Vous pouvez facilement interroger la version Numpy à l'aide du code Python. Voici la méthode d'implémentation et un exemple de code : importnumpyasnpprint(np.
