所谓链式调用就是调用完一个函数后还能再继续调用其它函数,这样大大减少了代码量,尤其是项目比较大的时候,逻辑集中清晰明了,且易于查看和修改。
- react hooks处理hooks原理用到了链式调用
fiber.memorizedStaste(hook0).next(hook1).next(hook2)
举个例子
var obj = {
name:'cat',
say:function(){
return this
}
}
console.log(obj) // {name: 'cat', say: ƒ}
console.log(obj.say()) // {name: 'cat', say: ƒ}
console.log(obj.say().say()) // {name: 'cat', say: ƒ}
demo2
// dom demo
function select(selector){
return {
el: document.querySelector(selector),
height: function(height){
this.el.style.height=height
return this
},
width: function(width){
this.el.style.width=width
return this
},
// ...
}
}
const dom = select('#app');
dom.height('200px').width('200px')