溫馨提示×

JavaScript原型鏈如何簡單

小樊
83
2024-10-31 05:32:47
欄目: 編程語言

JavaScript 原型鏈?zhǔn)菍崿F(xiàn)對象與對象之間繼承關(guān)系的核心機制。這里有一個簡單的例子來解釋原型鏈的工作原理:

  1. 創(chuàng)建一個構(gòu)造函數(shù) Person
function Person(name, age) {
  this.name = name;
  this.age = age;
}
  1. Person 的原型上添加一個方法 sayHello
Person.prototype.sayHello = function() {
  console.log('Hello, my name is ' + this.name);
};
  1. 創(chuàng)建一個新的對象 student,并將其原型設(shè)置為 Person.prototype
var student = Object.create(Person.prototype);

此時,student 對象會繼承 Person.prototype 上的方法和屬性。

  1. student 對象添加自己的屬性和方法:
student.name = 'John';
student.age = 20;
student.sayHello = function() {
  console.log('Hello, I am a student and my name is ' + this.name);
};

現(xiàn)在,student 對象有了 Person.prototype 上的 sayHello 方法,同時也擁有了自己特有的屬性和方法。

這就是 JavaScript 原型鏈的簡單實現(xiàn)。當(dāng)一個對象需要訪問另一個對象的屬性和方法時,它會沿著原型鏈查找。如果找到相應(yīng)的屬性和方法,就會停止查找;如果沒有找到,會繼續(xù)沿著原型鏈向上查找,直到找到或者到達原型鏈的頂端(null)。

0