原型链基础知识:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Inheritance_and_the_prototype_chain

__proto__ 和 prototype

在 JavaScript 中,每个对象都有一个名为 __proto__ 的内置属性,它指向该对象的原型。 同时,每个函数也都有一个名为 prototype 的属性,它是一个对象,包含构造函数的原型 对象应该具有的属性和方法。简单来说, __proto__ 属性是指向该对象的原型,而 prototype 属性是用于创建该对象的构造函数的原型

  1. prototype 是一个类的属性,所有类对象在实例化的时候将会拥有 prototype 中的属性和方法
  2. 一个对象的 __proto__ 属性,指向这个对象所在的类的 prototype 属性