原型链就是你定义一个函数和构建一个函数对象之间关系编程
你能够简单的理解为prototype就是各个实例化的函数对象的老妈(老妈有的就是你的,你有的不必定是老妈的)(__proto__这个属性是函数独有的)浏览器
比如你作题,你搞不定了喊你爸来解决,这个时候__proto__就是你爸的做用了,当你访问一个对象的属性的时候,他找不到那他就要说:爸这个东西我不知道啊,你能够搞不(__proto__这个属性是对象独有的)函数
这就像你家不止你一个,有你姐、你弟,那么怎么明确谁是谁呢,那就是constructor,它的做用就是由它来将各个对象区分开来(constructor属性也是对象才拥有的)学习
本来世界什么都没有,神说不行啊,这我咋编程啊,而后null就成了Object的空老爸,为何是空老爸呢?由于其余对象的老爸(proto)都或多或少可以帮忙解决问题,可是Object的老爸是null那你想从null中间掏出点什么属性看来是不可能了。
而后就是若是咱们正常定义了一个函数应该有几层呢? .net
本人菜鸡的一点理解,错了但愿大佬指导。prototype