首页 > Web开发 > 详细

JS高级---原型指向可以改变和原型链

时间:2020-01-05 14:01:39      阅读:105      评论:0      收藏:0      [点我收藏+]

原型指向可以改变和原型链

实例对象的原型__proto__指向的是该对象所在的构造函数的原型对象

构造函数的原型对象(prototype)指向如果改变了, 实例对象的原型(__proto__)指向也会发生改变

原型的指向是可以改变的

实例对象和原型对象之间的关系是通过__proto__原型来联系起来的,这个关系就是原型链

 

图示如下

 

技术分享图片

 

 

代码观测console理解

    //人的构造函数
    function Person(age) {
      this.age=10;
    }
    //人的原型对象方法
    Person.prototype.eat=function () {
      console.log("人的吃");
    };
    //学生的构造函数
    function Student() {

    }
    Student.prototype.sayHi=function () {
      console.log("嗨,小苏你好帅哦");
    };
    //学生的原型,指向了一个人的实例对象
    Student.prototype=new Person(10);
    var stu=new Student();
    stu.eat();
    stu.sayHi();

    //原型指向可以改变
    //实例对象的原型__proto__指向的是该对象所在的构造函数的原型对象
    //构造函数的原型对象(prototype)指向如果改变了,实例对象的原型(__proto__)指向也会发生改变

    //原型的指向是可以改变的
    //实例对象和原型对象之间的关系是通过__proto__原型来联系起来的,这个关系就是原型链

 

技术分享图片

JS高级---原型指向可以改变和原型链

原文:https://www.cnblogs.com/jane-panyiyun/p/12152006.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!