在这张图里Student构造函数的prototype指向Student原型对象,Student原型对象又指向Student构造函数,zs对象.__proto__指向的是Student原型对象。这就是构造函数、实例和原型对象三角关系。
那么只要是个对象,就有__proto__这个属性,那么Student原型对象又指向谁呢?
可以打印一下console.log(Student.prototype.__proto__)
可以看到指向的是Object原型对象,这个原型对象是由Object创建而来的。
那么Object原型对象的__proto__又指向谁呢?
console.log(Object.prototype.__proto__) // null
输出的是null,所以指向的是null,这就构成了原型链。
原文:https://www.cnblogs.com/perse/p/12039997.html