javascript模拟命名空间
在C++和C#中,命名空间用于尽可能地减少名称冲突。例如,在.NETFramework中,命名空间有助于将Microsoft.Build.Task.Message类与System.Messaging.Message区分开来。JavaScript没有任何特定语言功能来支持命名空间,但很容易使用对象来模拟命名空间。如果要创建一个JavaScript库,则可以将它们包装在命名空间内,而不需要定义全局函数和类,如下所示:
varMSDNMagNS={};
MSDNMagNS.Pet=function(name){//codehere};
MSDNMagNS.Pet.prototype.toString=function(){//code};
varpet=newMSDNMagNS.Pet(“Yammer”);
命名空间的一个级别可能不是唯一的,因此可以创建嵌套的命名空间:
varMSDNMagNS={};
//nestednamespace“Examples”
MSDNMagNS.Examples={};
MSDNMagNS.Examples.Pet=function(name){//code};
MSDNMagNS.Examples.Pet.prototype.toString=function(){//code};
varpet=newMSDNMagNS.Examples.Pet(“Yammer”);
可以想象,键入这些冗长的嵌套命名空间会让人很累。幸运的是,库用户可以很容易地为命名空间指定更短的别名:
//MSDNMagNS.ExamplesandPetdefinition... //think“usingEg=MSDNMagNS.Examples;” varEg=MSDNMagNS.Examples; varpet=newEg.Pet(“Yammer”); alert(pet);
如果看一下MicrosoftAJAX库的源代码,就会发现库的作者使用了类似的技术来实现命名空间,这里就不做详细说明了,有需要的小伙伴自己去度娘找吧。
以上就是本文的全部内容了,希望对大家学习javascript能够有所帮助
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下