原型链(Prototype Chain)是JavaScript中的一种模式,它利用了JavaScript对象继承的特性。在JavaScript中,每个对象都有一个原型(prototype)属性,该属性指向其创建时的构造函数的原型对象。
原型链模式的基本思想是,通过设置对象的原型来间接实现继承。当一个对象尝试访问一个它自身不包含的属性或方法时,JavaScript引擎会沿着原型链向上查找,直到找到该属性或方法,或者到达原型链的顶端(通常是`Object.prototype`)。
以下是原型链模式的一些关键点:
1. 原型继承:通过设置对象的原型,可以使得对象继承另一个对象的方法和属性。
2. 动态继承:原型链允许在运行时动态地继承属性和方法。
3. 节省内存:原型链避免了重复创建多个对象实例的属性和方法,从而节省内存。
以下是一个简单的原型链示例:
```javascript
function Animal(name) {
this.name = name;