网上购物有哪些网站?,wordpress博客费用,wordpress引用页面,电子商务公司一般是做什么的原型链继承
原型链继承是 JavaScript 中实现继承的一种方式#xff0c;它通过使用原型来实现对象之间的继承关系。
在 JavaScript 中#xff0c;每个对象都有一个原型#xff08;prototype#xff09;#xff0c;它是一个指向另一个对象的引用。当我们访问一个对象的属性…
原型链继承
原型链继承是 JavaScript 中实现继承的一种方式它通过使用原型来实现对象之间的继承关系。
在 JavaScript 中每个对象都有一个原型prototype它是一个指向另一个对象的引用。当我们访问一个对象的属性时如果该对象自身没有该属性则会去它的原型上查找如果原型上也没有则会继续往上层原型查找直到找到该属性或者到达原型链的顶端。
原型链继承就是利用这种原型链的特性来实现继承。具体步骤如下
创建一个父类的构造函数并定义父类的属性和方法。创建一个子类的构造函数并将其原型对象指向父类的实例。在子类的构造函数中添加子类独有的属性和方法。
// 1
function Parent() {this.arr [1,2,3]
}
Parent.prototype.getArr function() {return this.arr
}// 2
function Child() {this.name Child
}
Child.prototype new Parent()// 3
Child.prototype.getName function() {return this.name
}// 实例化
var child new Child()
child.getName() // Child
child.getArr() // [1,2,3]通过以上步骤我们就实现了子类继承父类的属性和方法并且可以在子类中添加自己独有的属性和方法。这样当我们创建子类的实例时它会先在自身查找属性和方法如果没有找到则会去父类的原型上查找从而实现了继承。
优点
原型链继承方式的优点在于 简单。
缺点
使用原型链继承的一个缺点是所有子类的实例都共享同一个父类的实例这可能会导致子类实例之间相互影响。
child.arr.push(4)
child.getArr() // [1,2,3,4]var child2 new Child()
child2.gerArr() // [1,2,3,4]想要的结果应该是[1,2,3]另外如果子类需要传递参数给父类的构造函数就无法通过直接调用父类的构造函数来实现需要通过中间的过程来传递参数。
结语
牵手 持续为你分享各类知识和软件 欢迎访问、关注、讨论 并留下你的小心心❤