可观察到的代码'return =>'在Javascript中是什么意思?

时间:2020-03-18 19:56:29

标签: javascript d3.js observable

  • 我不是在问abou如何使用=>使用ES6语法来创建函数,而是在问为什么在函数中间添加return函数。我进行了更多搜索,发现这是对currying函数进行编码的方式。*

我试图从Observable代码中获得一些想法,以构建一个模拟掉落球行为的图形。

我希望Observable与Javascript D3共享相同的语法,但是, 实际上我意识到它使用了不同的,自己的语法,有点类似于JS。

是什么 返回x => {.....继续...}是什么意思?

Observable的实际代码如下。

  return x => {
    const l = bisect.left(circles, x - radius);
    const r = bisect.right(circles, x + radius, l);
    let y = 0;
    for (let i = l; i < r; ++i) {
      const {x: xi, y: yi} = circles[i];
      const x2 = (xi - x) ** 2;
      const y2 = (yi - y) ** 2;
      if (radius2 > x2 + y2) {
        y = yi + Math.sqrt(radius2 - x2) + 1e-6;
        i = l - 1;
        continue;
      }
    }
    circles.splice(bisect.left(circles, x, l, r), 0, {x, y});
    return y;
  };

我还想知道以下代码中的“重放”,“继续”和“收益”是什么。 我希望在Javascript中实现代码...

0 个答案:

没有答案