原型和原型链

var 实例对象 = new 构造函数
构造函数有Object( )、Function( )、Number( )、String( )、Boolean( )
可将上述构造函数分为三层:1、Object( ) 2、Function( ) 3、Number( )、String( )、Boolean( )
原型指的是JavaScript防止重复声明一些属性,将属性设置成公有属性,放在特定的地方供对象调用。
实例对象.proto和构造函数.prototype均指向可指向公有属性(原型)
因为每个构造函数(除了object( ))均有自己独有的原型,导致原型链的产生
exp:
var n1=new Number( );

n1.proto === Number().prototype
Number().prototype.proto === Object().prototype
如上所示则为原型链

需要注意的原型链:
1、Object.prototype.proto === null
2、Object.proto === Function.prototype === Function.proto
3、Function.prototype.proto === Object.prototype

参考链接:https://www.cnblogs.com/cloud-/p/9152761.html