![](https://box.kancloud.cn/77a3a3cf408d79f60258182f78c1ff50_520x586.png) > 1.对象有属性\_\_proto\_\_,指向该对象的构造函数的原型对象。 > 2.方法除了有属性\_\_proto\_\_,还有属性prototype,prototype指向该方法的原型对象。 每个对象都有一个私有属性(称之为 [[Prototype]]),它指向它的原型对象(prototype)。该 prototype 对象又具有一个自己的 prototype ,层层向上直到一个对象的原型为 null。根据定义,null 没有原型,并作为这个原型链中的最后一个环节。 几乎所有 JavaScript 中的对象都是位于原型链顶端的Object的实例。 当访问对象的某个属性的时候,会先查找当前对象的属性,然后在查找原型对象的属性,如果没找到继续查找该原型对象的原型对象属性,层层查找直到原型链顶端。 ## 相关操作 判断实例 与原型的关系:instanceof 原型对象的键名: `__proto__`