JS链式调用原理
介绍
原理分析
对象链式调用
let obj = {value: 0}
// 方式一:直接给对象属性添加方法
obj.add = function (a) {
this.value += a
return this
}
obj.reduce = function (b) {
this.value -= b
return this
}
// 方式二: 给对象的构造函数的原型添加方法
obj.constructor.prototype.add = function (a) {
this.value += a
return this
}
obj.constructor.prototype.reduce = function (b) {
this.value -= b
return this
}
// 然后可以链式调用obj的方法了
obj.add(3).reduce(1)
// 俩者的区别在于:前者是自有属性,后者的方法继承于原型链上方法链式调用
发散思考
总结
参考
Last updated
Was this helpful?