将 => () => 转换为 ES5

Jos*_*ons 5 javascript es5-compatiblity

由于依赖于执行脚本的系统,我正在将一些脚本从 ES6 转换为 ES5。我遇到了这个特定命令的问题:

transition.selectAll('path.hidden-arc')
   .attrTween('d', d => () => middleArcLine(d));
Run Code Online (Sandbox Code Playgroud)

我不确定他们试图用 '=> () =>' 语法完成什么,也不确定如何将其转换为 ES5 标准函数。任何帮助是极大的赞赏。

jas*_*n_r 6

它使用箭头函数来表示一个函数,该函数返回一个函数,该函数返回调用该middleArcline函数的值。在 ES5 中,它可能看起来像这样:

transition.selectAll('path.hidden-arc').attrTween('d', function (d) {
    return function () {
        return middleArcLine(d);
    };
});
Run Code Online (Sandbox Code Playgroud)

请注意,Babel是在不同版本的 JavaScript 之间进行编译的好工具