Maison  >  Article  >  interface Web  >  Différentes façons de créer des espaces de noms en JavaScript

Différentes façons de créer des espaces de noms en JavaScript

autoload
autoloadoriginal
2021-04-02 09:45:462131parcourir

Différentes façons de créer des espaces de noms en JavaScript

Les variables globales dans JavaScript provoquent souvent des conflits de noms, voire parfois une réécriture les variables ne sont pas dans l'ordre que vous imaginiez, donc afin d'éviter les 全局变量名 conflits, créer 命名空间 devient la solution optimale.

1. Implémenter via la fermeture (Closure) et l'objet

Déclarez toutes les variables et méthodes dans la fermeture et transmettez un JSON Object Renvoie l'interface publique :

var NameSpace = NameSpace || {};
 NameSpace.Hello = (function() {   
 //待返回的公有对象  
  var self = {};   
  //私有变量或方法   
  var name = 'world';  
   //公有方法或变量   
   self.sayHello = function(_name) {    
    return 'Hello ' + (_name || name);  
     } ;   
     //返回的公有对象   
     return self; 
}());

2. Créer un objet via un objet JSON, le code est le suivant :

var NameSpace = NameSpace || {}; 
NameSpace.Hello = {     name: 'world'   , sayHello: function(_name) {   
  return 'Hello ' + (_name || this.name);  
   }
 };

3. Créer via une fonction : (plus complexe)

Il s'agit d'une méthode d'écriture relativement courante, obtenue en déclarant un function et en définissant des variables initiales dans la fonction. . Les méthodes publiques sont écrites en prototype, telles que :

var NameSpace = NameSpace || {}; 
/* Function */ 
NameSpace.Hello = function() {   
    this.name = 'world'; 
}; 
NameSpace.Hello.prototype.sayHello = function(_name) {   
    return 'Hello ' + (_name || this.name); 
}; 
var hello = new NameSpace.Hello(); 
hello.sayHello();

4 Créer via la fonction : (plus concis)

var NameSpace = NameSpace || {}; 
NameSpace.Hello = new function() {   
    var self = this;   
    var name = 'world';   
    self.sayHello = function(_name) {    
     return 'Hello ' + (_name || name);  
      }; 
 };

recommandé. : "Questions et réponses de l'entretien js 2021 (grand résumé)"

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:
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

Articles Liés

Voir plus