我爱Aspx >> Asp.Net >> JavaScript中基于类的继承JavaScript中基于prototype的继承机制可以很好地工作,但是有些人已经习惯于C++和Java等语言中基于类的继承机制,对于这些人来说,JavaScript的prototype继承机制不是一种自然的编程方法。如果你不想用基于prototype的继承,而想用一种基于类的继承方法,那就继续读下去吧。
Netscape的Bob Clary也提出了一个方法,通过这种方法,一个对象可以使用一个通用的脚本从另一个对象继承属性和函数。这个脚本只是将“父”对象的属性和函数复制到“子”对象。为此,我们将说明如何对脚本稍加修改,从而只是将子对象中不存在的属性和函数复制到子对象;这样一来,子对象中的函数就能覆盖父对象的函数。在两个对象之间创建继承关系的通用函数如下:
function createInheritance(parent, child) {
var property;
for(property in parent) {
if(!child[property]) {
child[property] = parent[property];
}
}
}
createInheritance函数有两个参数,父对象和子对象。这个函数只是迭代处理父对象的所有成员(成员就是属性或函数),如果某个成员在子对象中不存在,则复制到子对象。
使用createInheritance函数相当简单:首先创建子对象的一个实例,然后使用createInheritance函数,为它传递子对象以及父对象的一个实例,如下:
var child = new Child();
createInheritance(new Parent(), child);
父对象中有而子对象中没有的所有属性和方法将复制到子对象。
Ҷƪл˵?
私有属性和使用JavaScript的信息..[05-20]
通过prototype属性建立面向对象的..[05-20]
使用JSDoc建立JavaScript代码的文..[05-20]
使用JSLint完成JavaScript语法检..[05-20]
完成JavaScript压缩和模糊处理[05-20]
JavaScript本地图片预览程序[05-20]
三种JavaScript进度条[05-20]
超酷JavaScript菜单类[非常漂亮][05-20]
JavaScript实现AJAX的拖动效果[05-20]
使用javascript实现两个listbox中..[05-20]
私有属性和使用JavaScript的信息..[05-20]
通过prototype属性建立面向对象的..[05-20]
使用JSDoc建立JavaScript代码的文..[05-20]
使用JSLint完成JavaScript语法检..[05-20]
完成JavaScript压缩和模糊处理[05-20]
使用Firefox的Web开发扩展包[05-20]
微软提供的ASP.NET 2.0空间,你还..[05-20]
JavaScript本地图片预览程序[05-20]
Visual Studio 2005 中的新的 Da..[05-20]
应用程序块的性能测试[05-20]