JavaScript 中链式调用是如何实现的?

2024-11-13 13:51:05 编辑:抖狐科技 来源:摘自互联网

javascript 中链式调用是如何实现的?

javascript 中链式调用的实现

在 javascript 中,链式调用是指函数可以连续地在一个表达式中调用,而无需使用临时变量的方法。

要实现链式调用,可以采用以下方法:

使用链式调用接受“this”对象

立即学习“Java免费学习笔记(深入)”;

通过使用 this 关键字,可以将对象本身作为函数的参数。

function sint(a, b) {
  this.val = a + b;
}

sint.prototype.j = function(e) {
  return this.val + e;
}

登录后复制

在函数内部定义链式调用

通过在函数内部定义另一个函数,可以实现链式调用。

function sint(a, b) {
  this.val = a + b;

  this.j = function(e) {
    return this.val + e;
  }
}

登录后复制

使用 es6 proxy 绑定 symbol.toprimitive

通过使用 es6 proxy,可以绑定 symbol.toprimitive 方法,使其在参与计算时返回所需的值。

function sum(...args) {
  this.value = args.reduce((a, b) => a + b, 0);

  return new proxy(this, {
    get: function (target, prop) {
      if (prop === symbol.toprimitive) {
        return () => target.value;
      }

      return target[prop];
    }
  });
}

sum.prototype.add = function (value) {
  this.value += value;
  return this;
}

登录后复制

使用示例

// Sint 方法
console.log(Sint(1, 2).j(10)); // 13

// ES6 Proxy 方法
console.log(new Sum(1, 2, 3).add(4).add(5)); // 15
console.log(new Sum(1, 2, 3).add(4).add(5) + 20); // 35

登录后复制

以上就是JavaScript 中链式调用是如何实现的?的详细内容,更多请关注抖狐科技其它相关文章!

本站文章均为抖狐网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
我们猜你喜欢