Js中的继承

2021-06-09 04:13

阅读:385

标签:获取   依次   函数   prototype   实现   原型链   程序   函数实现   prot   

  Js中的继承,主要是利用对象与对象之间的链接实现的,对象和对象产生链接,就像火车的车箱依次相连一样,1车箱连接2车箱,2车箱连接3车箱。在一个对象上调用一个方法或读取一个属性,就相当于在火车上找人一样。如果在当前车箱中找到了,那就不用再找了,对于对象来说,那就是直接调用它自身拥有的方法,如果没有找到人,怎么办,它就会去2车箱去找(假设当前车箱是1车箱),因为2车箱和1车箱是连接的,2车箱还没有,那就顺着链接依次向下找,找3车箱,直到找到为止,或找完整个火车。对于对象来说,它也是一样,如果当前对象中没有该方法,它会依次顺着对象之间的连接进行寻找,这也就是所谓的原型链。

  构造函数方式实现原型链

  我们在实现原型链继承的时候,就是创建对象与对象之间链接。对象与对象之间的链接最初是由构造函数实现的,因为,当用构造函数创建一个对象实例的时候,该实例自动会获取到一个内部属性[[prototype]], 它就会指向构造函数的protype。构造函数的protype也是一个对象,所以两个对象之前产生了链接,实例对象链接原型对象,如果原型对象也是用构造函数生成的, 它就会链接到生成它的构造函数的protype上,这又产生了对象之间的链接,原型对象链接到另一个原型对象上,再加上实例对象,就形成了一个链条,实例对象=>实例对象的原型对象 =>实例对象的原型对象的原型对象,这个链条可以一直链接下去。当我们在实例对象上调用方法或读取属性的时候,它就会顺着这个链条一直向下找。在js中,构造函数的主要作用就是创建对象与对象之间的链接。

  我们用高级程序设计中的代码实现一下

  

Js中的继承

标签:获取   依次   函数   prototype   实现   原型链   程序   函数实现   prot   

原文地址:http://www.cnblogs.com/SamWeb/p/7302296.html


评论


亲,登录后才可以留言!