总结出JavaScript有以下几种继承继的方法:
1.对象冒充方法,可以多承继;
如:
A=function()
{
this.code="001";
this.name="whiteangell";
this.getCode=function()
{
return this.code;
}
this.getName=function()
{
return this.name
}
};
B = function()
{
this.newMethod=A;
this.newMethod();
this.age=20;
this.getAge=function()
{
return this.age;
}
};
var bb = new B();
alert(bb.getName());
2.原型链法;
如:
A=function()
{
this.code="001";
this.name="whiteangell";
this.getCode=function()
{
return this.code;
}
this.getName=function()
{
return this.name
}
};
B = function()
{
this.age=20;
this.getAge=function()
{
return this.age;
}
};
B.prototype=new A();
var bb = new B();
alert(bb.getName());
3.拷贝复制法
如:
Object.extend = function(destination,source)
{
for ( pro in source )
{
destination [pro] = source [pro];
}
return destination ;
};
A = function(){};
A.prototype =
{
code:"001",
name:"whiteangell",
getCode:function()
{
return this.code;
},
getName:function()
{
return this.name
}
};
B= function(){};
B.prototype= Object.extend({
age:20,
getAge:function()
{
return this.age;
}
},A.prototype);
var bb = new B();
alert(bb.getName());
4.call()方法,可以多承继;
如:
A=function()
{
this.code="001";
this.name="whiteangell";
this.getCode=function()
{
return this.code;
}
this.getName=function()
{
return this.name
}
};
B = function()
{
A.call(this);
this.age=20;
this.getAge=function()
{
return this.age;
}
};
var bb = new B();
alert(bb.getName());
5.apply()方法,可以多承继;
如:
A=function()
{
this.code="001";
this.name="whiteangell";
this.getCode=function()
{
return this.code;
}
this.getName=function()
{
return this.name
}
};
B = function()
{
A.apply(this);
this.age=20;
this.getAge=function()
{
return this.age;
}
};
var bb = new B();
alert(bb.getName());
分享到:
相关推荐
以上就是JavaScript中常见的几种继承方式,每种都有其优缺点。在实际开发中,可以根据项目需求和性能考虑选择合适的方法。随着语言的发展,ES6引入了类(class)的概念,虽然在语法上更像传统的面向对象语言,但其...
每种继承方式都有其适用场景,开发者应根据实际需求选择合适的方法。例如,如果需要复用方法,可能更倾向于原型链继承;如果需要初始化特定的实例属性,构造函数继承可能更合适。组合继承则在大多数情况下提供了一种...
### JavaScript中的几种继承方法示例 #### 一、原型链继承 **原理**: 在JavaScript中,原型链继承是一种实现继承的方式,它通过让子类的原型对象指向父类的一个实例来实现属性和方法的共享。 - **核心概念**: 每个...
### JavaScript继承的三种方法实例详解 #### 一、概述 在JavaScript中,虽然原生语言层面没有提供传统意义上的“类”这一概念,但它...理解并掌握这几种继承方式对于编写高质量、可维护的JavaScript代码至关重要。
JavaScript 的 9 种继承实现方式归纳 JavaScript 中的继承方式是基于原型的,与基于类的编程语言,如 C++ 和 Java,截然不同。JavaScript 的灵活性使得其实现继承的方式非常多样化。本文将介绍 JavaScript 中的 9 ...
JavaScript定义类的几种方式包括工厂方式、构造函数和原型方式,每种方法都有其特点和适用场景,接下来我们将详细探讨。 工厂方式是最早期的面向对象编程在JavaScript中的实践之一。使用工厂方式定义类,本质上就是...
Javascript中的几种继承方式对比分析_.docx
下面将详细介绍一下JavaScript中常见的几种继承方法。 1. 原型链继承 原型链继承是基于JavaScript的原型对象所建立的一种继承方式。在JavaScript中,每个构造函数都有一个原型对象(prototype),原型对象包含一个...
为了解决这些问题,可以采用以下几种改进方案: 1. **使用`Object.create()`**:通过`Object.create()`来设置构造函数的原型,避免直接实例化父类。 2. **显式调用父类构造函数**:在子类构造函数中通过`Parent.call...
本文通过分析JavaScript的继承机制,提供了几种继承的实现方式,并分析了各自的优缺点和使用场景。同时,通过分析John Resig开发的知名开源框架中的核心源代码,展示了继承机制在JavaScript框架级项目开发中的应用。...
下面,我们将探讨在Javascript中实现继承的几种主要方法,并对每种方法进行详细的解释。 1. 原型链继承 原型链继承是Javascript中最基本的继承方式。它利用了原型对象的特性,即所有对象实例共享同一个原型对象上的...
`source.js`文件很可能是实现了上述某一种或几种继承模式的工具函数,可能包括但不限于以下内容: - 一个自定义的`extend`函数,用于创建子类并继承父类的属性和方法。 - 使用`Object.create`或`__proto__`来设置...
虽然JavaScript被许多人认为不是一种传统的面向对象语言,但它的灵活性和强大的继承模式使其在Web开发中扮演着关键角色。在JavaScript中,有多种实现继承的方式,每种都有其优缺点,适用于不同的场景。 首先,我们...
这里我们将深入探讨几种主要的继承方式:原型式继承、寄生式继承和寄生组合式继承。 ### 原型式继承 在JavaScript中,对象有一个名为`__proto__`的内部属性,指向创建该对象的构造函数的原型。原型式继承利用了这...
以下就是几种在JavaScript中实现继承的方式。 对象冒充(Pseudoclassical Inheritance): 对象冒充是利用构造函数和函数的call方法来实现的。构造函数使用this关键字定义属性和方法,而call方法则可以调用指定对象...
随后,文章介绍了几种主流的继承方式: 1. 原型链继承是JavaScript中最基本的继承方式。它涉及到一个子类型的原型被设置为一个父类型实例的操作。通过这种方式,子类型可以继承父类型的属性和方法。但是,原型链...
Javascript原型继承是一个被说烂掉了的话题,但是自己对于这个问题一直没有彻底理解,今天花了点时间又看了一遍《Javascript模式》中关于原型实现继承的几种方法,下面来一一说明下,在最后我根据自己的理解提出了一...