JavaScript
原型/原型链
JavaScript 的原型链是一种用于实现对象之间继承和共享属性与方法的机制
function Person() {}
Person.prototype.sayHello = function() {
console.log('Hello');
};
let person1 = new Person();
person1.sayHello();
// 输出Hello,因为person1可以访问到其原型对象(Person.prototype)上的sayHello方法构造函数有一个
prototype属性,它指向一个对象,这个对象就是由该构造函数创建的所有对象的原型对象。实例上会有
__proto__字段,指向该示例的构造函数当访问一个对象的属性或方法时,如果该对象本身没有这个属性或方法,JavaScript 会自动在其原型对象上查找。如果原型对象上也没有,就会继续在原型对象的原型对象上查找,以此类推,直到找到
Object.prototype。如果在整个原型链上都没有找到,就会返回undefined。向上查找到顶端时,为
null

最后更新于
这有帮助吗?