JS中分为普通对象和函数对象,Object ,Function 是JS自带的函数对象,其他对象,比如new Apple()出来的对象是普通对象。凡是通过 new Function() 创建的对象都是函数对象,其他的都是普通对象。
所有对象都有__proto__的内置属性,指向创建它的函数对象的原型对象prototype。
只有函数对象有原型对象 prototype属性。原型对象主要作用是继承。
原型对象prototype中都有个预定义的constructor属性,用来引用它的函数对象。
原型链的真正形成是靠的__proro__,而不是prototype。