在原型对象上新增实例对象需要的方法
在 JS 中可以通过原型链相关的一些内容,让 JS 代码在执行的时候会具有一些更高的性能。在 JS 中存在三种概念:
- 构造函数
- 原型对象
- 实例对象
实例对象和构造函数都是可以执行原型对象的,如果某一个构造函数的内部具有一个成员方法,可以让实例对象都需要频繁的去进行调用,在这里就可以直接把它添加在我们的原型对象上,而不需要把它放在构造函数内部。这中两种不同的实现方式在性能上,也会有所差异。
// 构造函数方式
var fn1 = function () {
this.foo = function () {
console.log(1111)
}
}
let f1 = new fn1()
// 原型链方式
var fn2 = function () {}
fn2.prototype.foo = function () {
console.log(22222)
}
let f2 = new fn2()