在你开始摆弄代码,你应该意识到使用继承和它能带来什么福利的目的。一般来说,在设计类的时候,我们要减少重复代码,减少类之间的耦合,很难做到两者,我们需要确定我们应该在特定的
条件和环境光。按照我们的理解,在面向对象的
语言,继承将直接耦合的类。但是,js由于其独特的灵活性,可以设计强大的耦合性和弱耦合性,高效而低效的代码。
下面提供了三种实现继承的
方法:js
类型继承、原型继承、混合类。这里是对类继承的简单
介绍,后面两个在后面简要介绍,请大家多注意,多指导,谢谢。
类的继承。
js类型继承的实现依赖于原型链,原型链是什么JS对象有一个
属性,
性能,它返回一个对象的引用类型,它是用来提供一组对象的类的基本
功能。
这似乎是一个原型的印象。是的,我们
经常使用代码。
复制代码代码如下所示:
var =
函数(){()
this.name =liyatang ;
};
person.prototype = { {
基本功能可以提供这里的人。
getName:函数(){
返回this.name;
}
}
我们将类的基本功能放在原型属性中,表示人对象的引用具有xxx函数。
在了解了原型,你需要了解什么是原型链。在成员访问对象(属性或方法),如果会员未在当前对象,然后JS会
发现它所指的对象模型中的属性,如果没有找到,找对象将继续原型下一级是指,直到找到你。如果你找不到它,你会回到undifined。
那么原型链给我们什么
提示呢不难想象,一个原型链意味着允许一个类继承另一个类的子类,只需设定原型实例指向父类,将父类的成员的类,因为它是父类中的成员不在时发现的一类的发现。(两段以上的话是不严格的,只有在的话,是很容易理解的。)
下面我们需要一个
中文班,需要继承者的姓名和班级getName成员。
复制代码代码如下所示:
函数=(名称,国家){
继承,需要调用父类的构造函数,可以通过调用调用,这对中文
人/这个范围,可以叫人成员。
person.call(这
名字);
this.nation =国家;
};
chinese.prototype = person.prototype;
这里与前面相同,因为覆盖了原型属性
/ / chinese.prototype = { {
getnation(功能){ / /:
返回 / / this.nation;
} / /
/