谈谈JS原型链的理解

每个函数都有一个显示原型,叫做prototype
每个对象都有一个隐式原型,叫做__proto__
对象的隐式原型对应函数的显示原型,指向同一个原型对象
原型对象上有一个constructor属性,指向对应的函数(构造器、类)

原型链是指属性的查找机制,先从对象的私有属性(_proto)中找,如果找不到,就沿着__proto__去原型对象(prototype=>proto)上找,一直找下去,直接null,这是原型链中的最后一个环节,这条链就叫做原型链;

优点:在原型模型的基础上构建经典模型相当简单
var o = {
a: 2,
m: function(){
return this.a + 1;
}
};
var p = Object.create(o);
// p 是一个继承自 o 的对象

posted @ 2022-08-10 11:26  Chiffon1996  阅读(47)  评论(0)    收藏  举报