一起学 Microsoft AJAX Library-Type 类

作者:vkvi 来源:千一网络(原创) 日期:2009-5-14

Type 的内容也非常多,我觉得两个很常用:

  • Type.registerNamespace(namespacePath[, baseArguments])
  • classInstanceVar.registerClass(typeName[, baseType[, interfaceTypes]])

分别用以创建一个名称空间和注册一个类。用示例来说明:

Type.registerNamespace("Samples");
 
Samples.A = function () { this.name = "来自类 A"; }
Samples.B = function () { Samples.B.initializeBase(this); }
Samples.C = function () { this.name = "来自类 C" }
 
Samples.A.registerClass("Samples.A");
Samples.B.registerClass("Samples.B", Samples.A);
Samples.C.registerClass("Samples.C");
 
var a = new Samples.A();
var b = new Samples.B();
var c = new Samples.C();
 
alert(a.name + "," + b.name + "," + c.name);

结果为:来自类 A,来自类 A,来自类 C。可以看出 B 继承自 A 了,它是怎么实现继承的呢?如下:

  • 在派生类的第一行调用 initializeBase,第一个参数表示要初始化谁的基类,所以通常是 this。第二个参数为基类构造函数的参数。
  • registerClass 时指定基类类型,是类型,所以没有引号。

上述示例经过了测试,MSDN 上有几个示例有误。

相关阅读

你前面那位网友看了:Request 各个 Path 的区别

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
标题:必填
内容:
本站永远终止与捏造“罪名”不支付广告费的某度联盟合作。
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他