JavaScript 中的每个对象都有一个原型对象,这个原型对象又有自己的原型对象,形成一条原型链。当我们访问一个对象的属性或方法时,JavaScript 引擎会先在这个对象本身查找,如果找不到就会去它的原型对象上查找,如果还找不到就去原型对象的原型对象上查找,一直到最后的 Object.prototype 为止。

例如:

function Person(name, age) {
  this.name = name;
  this.age = age;
}

Person.prototype.sayHello = function() {
  console.log('Hello, I'm ' + this.name);
}

var person1 = new Person('Tom', 18);

person1.sayHello(); // 输出 'Hello, I'm Tom'

在这里,Person.prototype 是 person1 对象的原型对象,它有一个 sayHello 方法。当我们调用 person1.sayHello() 时,JavaScript 引擎首先在 person1 对象本身查找 sayHello 方法,找不到就会去 person1 的原型对象 Person.prototype 上查找,找到了就执行它。

JavaScript 原型链:深入理解对象继承

原文地址: https://www.cveoy.top/t/topic/mFif 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录