总结下来的几个点:
1、_proto_和constructor是对象独有的,protoType是函数独有的,但函数也属于对象,所以函数也有_proto_和protoType属性。
2、_proto_属性的作用就是当访问一个对象的属性时,如果该对象内部不存在这个属性,则会顺着它的_proto_属性所指的那个对象上找,直到为止。通过_proto_属性将对象连接起来的链路称之为原型链。
3、protoType是让函数实例化的对象们能够拥有相同的属性和方法,即用来继承的。
4、所有函数(此时可认为是对象)的构造函数是Function本身。即Function._proto_=Funciton.prototype
5、原型对象的构造函数指向其本身。
6、子函数的_proto_属性指向构造函数的prototype。
7、从原型链要理解了为什么js万物皆对象,包括函数。其实通过图上可以看书,Fuction和Object的原型_proto_都指向Function.prototype,也就是他们的构造函数是一样的。可以理解为本体是一样的。
原文:https://www.cnblogs.com/sherrybloghome/p/11941794.html