原型和原型链
对象实现方法的几种方式:
1、当前构造函数构造出的实例可用
2、当前实例可用
3、当前构造函数构造出的实例可用
4、所有实例可用
5、所有实例可用
记:
1、只有函数才有 prototype 属性,该属性是一个对象
2、所有实例的 __proto__ 都指向构造函数的 prototype 属性
3、Object.prototype 是原型链的顶端:Object.prototype.__proto__ // null
4、Object 本身是构造函数,继承自 Function.prototype
5、Function 也是对象,也继承自 Function.prototype
6、一个先有鸡还是蛋的问题
哈哈哈,这问题好玩不!
附张图:
直观图
source: https://github.com/creeperyang/blog/issues/9