Je suis un débutant javascript, et je suis venu avec le schéma suivant pour espaces de noms:namespacing Javascript - cette méthode particulière est-elle une bonne pratique?
(function() {
var ns = Company.namespace("Company.Site.Module");
ns.MyClass = function() { .... };
ns.MyClass.prototype.coolFunction = function() { ... };
})();
Company.namespace est une fonction enregistrée par un script qui crée simplement la chaîne d'objets jusqu'au module.
A l'extérieur, une portée non globale:
var my = new Company.Site.Module.MyClass();
Je suis particulièrement poser des questions sur la méthode par laquelle je me cache la ns
variable d'une portée globale - par une enveloppe fonction anonyme exécutée immédiatement. Je pourrais juste écrire Company.Site.Module
partout, mais ce n'est pas sec et un peu en désordre comparé au stockage des ns dans une variable locale.
Que dites-vous? Quels pièges y a-t-il avec cette approche? Y a-t-il une autre méthode considérée comme plus standard?
@ pimvdb Idée astucieuse, mais ça aurait l'air un peu bizarre avec plusieurs extensions pour la classe et les méthodes ... – Max