Code前端首页关于Code前端联系我们

js chaincall

terry 2年前 (2023-09-09) 阅读数 137 #Javascript
文章标签 JavaScript链式调用
js链式调用js chaincall

链式调用实际上与语言无关。例如,链式调用具有以下代码形式:

car.start().drive()

下面的代码和上面的代码效果一样

但是上面看起来更简洁:

car.start()
car.drive()

我们可以将其简化为一行程序。

如果每个方法都返回对象本身,这是可能的。换句话说,实现如下:

const car = {
  start: function() {
    console.log('start')
    return this
  },
  drive: function() {
    console.log('drive')
    return this
  }
}

需要注意的是,不能使用箭头函数,因为箭头函数中用作对象方法的箭头函数不与对象实例关联。

箭头函数确实很方便,但在这种情况下并不适用。

当方法没有返回任何值集时,链接方法调用很有用,否则方法调用显然应该分配给变量并且链接是不可能的:

const result = car.start()
if (result) {
  car.drive()
}

希望这篇文章能帮助大家理解链式调用。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门