`
xjtusaber
  • 浏览: 54797 次
  • 性别: Icon_minigender_1
  • 来自: 龙黄
社区版块
存档分类
最新评论

阅读prototype 1.5.js之继承

阅读更多
首先贴出prototype.js实现继承的代码:
Object.extend = function(destination, source) {
  for (var property in source) {
    destination[property] = source[property];
  }
  return destination;
}

很明显,这里把source的所有属性copy到destination下,即destination继承source,由于只是简单的属性copy,所以写代码的时候要注意调用Object.extend的顺序,否则无法实现overriding。举个例子:
var  Animal={
	step:function(){
		alert('Animal stepping  !')
	}
}
var People=Class.create();
People.prototype={
	initialize:function(name){
		this.name=name;
	},
	step:function(){
		alert(" People "+this.name+'  stepping  !')
	},
	work:function(){
		alert('People '+this.name+' can work ')
	}
}
Object.extend(People.prototype,Animal)//copy 事例变量

var p=new People('xqxq');
p.step();

输出结果为:Animal stepping  !
而我本来是想在子类People覆盖掉父类Animal的step方法的,原因很简单:最后才声明People继承Animal,copy过程中父类把子类的方法覆盖了!!
正确的办法是先声明继承(把父类的属性先copy过来),然后再定义子类的方法、属性,比如这个例子,即把
Object.extend(People.prototype,Animal)//copy 事例变量
这句放到var People=Class.create();之后。
分享到:
评论

相关推荐

    Prototype 1.5 中文手册.rar

    通过阅读这份中文手册,开发者可以深入了解Prototype 1.5的特性,掌握如何在实际项目中有效地利用它来提升开发效率和代码质量。同时,压缩包中的其他文件,如“红黑软件使用帮助.txt”可能提供了一些额外的信息,如...

    prototype(JS类库).rar

    - **Prototype1.5.chm**:这是Prototype 1.5的离线帮助文档,通常包含了详细的API参考、示例代码和使用指南,可以帮助开发者快速理解和掌握这个版本的特性。 - **Prototype-1.6.0.3中文手册.chm**:这份手册是1.6....

    prototype.js

    1. **Prototype1.5.chm**:这可能是一个帮助文档,包含了prototype.js 1.5版本的详细说明和API参考,对于学习和调试代码非常有帮助。 2. **prototype1.4开发手册.chm** 和 **prototype1.4开发手册.doc**:这些都是...

    prototype1.5中文说明

    4. **模拟类和继承**:Prototype 通过`Class.create`和`Object.extend`等方法模拟了面向对象编程的概念,使得在JavaScript中实现类和继承成为可能。 5. **Ajax组件**:Prototype 包含了一些预定义的组件,如...

    prototypejs和例子代码

    在标题中提到的"prototype1.4.js"和"prototype1.5.js"是PrototypeJS的两个版本,分别代表了该库在不同时间点的开发状态。 1. **PrototypeJS基础概念**: PrototypeJS由Sam Stephenson创建,它的设计目标是提升...

    prototype1.5API

    Prototype 1.5 API 是一个JavaScript库,专为Web开发设计,旨在简化DOM操作、事件处理、Ajax交互以及创建可复用的JavaScript对象。这个API文档是开发者学习和使用Prototype库的重要参考资料,提供了详细的函数、方法...

    Prototype&Prototype中文手册

    Prototype是JavaScript库中的一个关键工具,它为Web开发者提供了丰富的功能和便利,...通过深入研究"Prototype1.5中文手册"并实践其中的示例,开发者可以大大提高JavaScript编程的效率,打造更加流畅的Web应用程序。

    prototype1.4-1.5,中文手册(chm),教程(.pdf,.doc)合集

    Prototype是JavaScript库,它极大地增强了JavaScript的基本功能,使得开发者能够更高效、更优雅地编写复杂的JavaScript代码。这个压缩包包含了Prototype的1.4和1.5版本的手册以及相关的中文教程,提供了丰富的学习...

    prototype操作文档和源码(1.5)

    Prototype机制是JavaScript实现面向对象编程的核心之一。在这个“prototype操作文档和源码(1.5)”中,我们可以深入理解并学习如何利用Prototype进行高效开发。 首先,`prototype.js`可能是一个实现了Prototype库...

    prototype 1.5 scriptaculous 1.6.1 学习笔记

    【prototype 1.5 和 Scriptaculous 1.6.1 学习笔记】 Prototype 是一个 JavaScript 库,它提供了一系列强大的工具,用于简化 JavaScript 的面向对象编程和DOM操作。而 Scriptaculous 是基于 Prototype 的一个...

    prototype 1.4-1.5 中文手册大全

    Prototype是JavaScript库的一个重要组成部分,它为JavaScript编程提供了一种更为高效、简洁的方式来操作和扩展JavaScript的...通过深入阅读和实践,你将能够充分利用Prototype库提高你的JavaScript开发效率和代码质量。

    prototype中文开发手册大全

    **原型(Prototype)是JavaScript语言中的一个重要概念,它在JavaScript对象继承中扮演着核心角色。在"Prototype中文开发手册大全"中,我们主要探讨的是Prototype库,这是一个为JavaScript设计的开源框架,主要用于...

    JavaScript1.5参考手册chm

    通过阅读JavaScript1.5参考手册,开发者不仅可以学习到这一版本的具体特性,还可以了解到JavaScript语言发展的历程,这对于提高编程技能和解决实际问题大有裨益。尽管现代的Web开发更多地依赖于更新的JavaScript版本...

    prototype源码

    通过阅读和分析 Prototype 1.5 版本的源码,开发者不仅可以学习到 JavaScript 的高级技巧,还能领略到优秀的代码设计和工程实践。同时,了解 Prototype 的源码也有助于理解其他 JavaScript 库和框架,如 jQuery 和 ...

    Prototype各版本

    Prototype 提供了类(Class)、原型继承(Prototype Inheritance)、事件处理(Event Handling)、元素操作(Element Manipulation)等核心特性,简化了 JavaScript 的开发工作。它还包括对 AJAX(异步 JavaScript ...

    JavaScript完全自学宝典 源代码

    1.本书1~21章所附代码的运行环境 操作系统:Windows 2003、Windows XP Professional,或者Windows 2000 开发环境:UltraEdit12.10a、eclipse-jee-europa ... prototype.js Prototype的.js库文件。

    Prototype最新版(1.5 rc2)使用指南(1)

    Prototype是JavaScript领域中的一款著名框架,其最新版1.5 rc2旨在简化动态Web应用程序的开发。这款框架提供了一个独特的工具包,支持类驱动的开发,并拥有出色的Ajax库,因此在Web开发者中广受欢迎。Prototype的...

    prototype文档

    在Prototype中,`base.js`是基础模块,它提供了类的创建和继承机制。`Class.create()`是一个关键函数,它允许开发者创建自定义的JavaScript类。而`Object.extend(destination, source)`则用于合并源对象的属性到目标...

    javascript面向对象编程(中文)

    2. **原型和原型链**:JavaScript使用原型(prototype)来实现继承,每个对象都有一个内部的`__proto__`属性,指向其构造函数的原型对象。原型链是由这些原型对象形成的链状结构,用于查找对象的属性和方法。 3. **...

    Prototype API Documentation

    Prototype是一款JavaScript框架,旨在简化动态Web应用的开发过程。该框架由Sam Stephenson创建,并于2005年2月作为开源项目发布。Prototype的核心开发团队还包括Thomas Fuchs、Justin Palmer、Andrew Dupont、Dan ...

Global site tag (gtag.js) - Google Analytics