如何为点差运算符创建一个polyfill

时间:2019-07-18 10:10:46

标签: javascript ecmascript-6 polyfills

我试图为点差运算符创建一个polyfill。我的目标是创建类似于散布算子的东西,在其中我可以使用三个@@@符号代替三个点。

例如,在ES6中

function sum(x, y, z) {
  return x + y + z;
}

const numbers = [1, 2, 3];

console.log(sum(...numbers));
// expected output: 6

我正在尝试实现类似的功能


// Instead of triple dots, it should be triple @
console.log(sum(@@@numbers));
// expected output should be 6

我希望console.log(sum(@@@numbers));的输出为6

1 个答案:

答案 0 :(得分:0)

cannot create a polyfill for spread运算符。

处理此类向后兼容性问题的正确方法是在ES6中编写代码,并像transpiler一样使用babel将其自动转换为ES5。