Maison > interface Web > js tutoriel > le corps du texte

JavaScript simule les astuces namespace_javascript

WBOY
Libérer: 2016-05-16 16:03:30
original
1189 Les gens l'ont consulté

En C et C#, les espaces de noms sont utilisés pour minimiser les conflits de noms. Par exemple, dans le .NET Framework, les espaces de noms permettent de distinguer la classe Microsoft.Build.Task.Message de System.Messaging.Message. JavaScript ne dispose d'aucune fonctionnalité spécifique au langage pour prendre en charge les espaces de noms, mais il est facile d'émuler des espaces de noms à l'aide d'objets. Si vous créez une bibliothèque JavaScript, vous pouvez les envelopper dans un espace de noms sans définir de fonctions ni de classes globales, comme ceci :

var MSDNMagNS = {};
MSDNMagNS.Pet = function(name) { // code here };
MSDNMagNS.Pet.prototype.toString = function() { // code };
var pet = new MSDNMagNS.Pet(“Yammer”);
Copier après la connexion

Un niveau d'espace de noms peut ne pas être unique, des espaces de noms imbriqués peuvent donc être créés :

var MSDNMagNS = {};
// nested namespace “Examples”
MSDNMagNS.Examples = {};
MSDNMagNS.Examples.Pet = function(name) { // code };
MSDNMagNS.Examples.Pet.prototype.toString = function() { // code };
var pet = new MSDNMagNS.Examples.Pet(“Yammer”);
Copier après la connexion

Comme vous pouvez l'imaginer, taper ces longs espaces de noms imbriqués peut être fatiguant. Heureusement, les utilisateurs de la bibliothèque peuvent facilement spécifier des alias plus courts pour les espaces de noms :

// MSDNMagNS.Examples and Pet definition...
// think “using Eg = MSDNMagNS.Examples;”
var Eg = MSDNMagNS.Examples;
var pet = new Eg.Pet(“Yammer”);
alert(pet);
Copier après la connexion

Si vous regardez le code source de la bibliothèque Microsoft AJAX, vous constaterez que l'auteur de la bibliothèque a utilisé une technologie similaire pour implémenter les espaces de noms. Je ne l'expliquerai pas en détail ici. Les amis qui en ont besoin peuvent se rendre chez Du Niang. pour le trouver.

Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à tous ceux qui apprennent le javascript

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal