原型对象理解

80 阅读1分钟

根据代码理解原型对象的工作原理:
constructor属于原型对象,指向构造函数
prototype属于构造函数,指向原型对象
__proto__属于实例对象,指向原型对象

//构造函数
 function Person(name, age) {
      this.name = name
      this.age = age
    }
    //在原型对象里进行定义方法
    Person.prototype.learn = function () {
      console.log('I can do it!');
    }
    Person.prototype.eat = function () {
      console.log('谁还不是个吃货了');
    }
     /*解析new 过程:
        创建对象
        this 指向对象
        对象赋值
        return 带回*/
        //实例对象
    let son = new Person('lisa', 25)
    son.learn()

Person.prototype===son.proto //true
son.name //属性调用方法
son.learn()//原型对象中的方法调用方法

image.png