1. 构造函数,实例化对象和原型对象三者的关系

构造函数可以创建实例化对象

构造函数中有一个属性叫做prototype,是构造函数的原型对象

构造函数的原型对象(prototype)中有一个constructor构造器,这个构造器指向的是自己所在的原型对象所在的构造函数
实例化对象的原型对象(__proto__)指向的是该构造函数的原型对象
构造函数中的原型对象prototype中的方法可以直接被实例对象访问
实例对象使用的属性或者方法,先在实例对象中查找,找到了则直接使用,找不到则去实例对象的__proto__指向的原型对象prototype中找,找到了则使用,找不到则报错
 

2. apply和call方法 bind方法

两者作用相同,都是用来改变this指向,是在调用的时候改变this指向(如图,原本指向person的,改变成了指向student)

bind方法也是用来改变this指向,但是此方法是在复制的时候调用(如图,改变了定时器中的this指向,将指向window改变为了指向实例对象)