【发布时间】:2020-03-28 06:03:25
【问题描述】:
ES6 纽比
我是 es6 的新手,我遇到了箭头函数的问题,我无法解决或在任何地方找到。
这是我的问题,我们以这个函数作为参考:
Javascript:
const plus = function() {
let sum = 0;
for (let i = arguments.length - 1; i >= 0; i--) {
sum += arguments[i];
console.log(i);
}
return sum;
console.log(arguments);
}
console.log(plus(2,4,6,8));
它工作正常,结果将是 20,并且浏览器能够解释它。唯一的问题是,当我尝试在 es6 中翻译时,函数会返回错误,在这种情况下,参数未定义:
const plus = () => {
let sum = 0;
for (let i = arguments.length - 1; i >= 0; i--) {
sum += arguments[i];
console.log(i);
}
return sum;
console.log(arguments);
}
console.log(plus(2,4,6,8));
我得到了那部分,但即使我将参数定义为一个空数组,结果仍然是一样的。
我试图理解错误,但不喜欢如何解决它,更好地使用 es6 背后的理论。
谢谢
【问题讨论】:
-
箭头函数没有得到
arguments对象。您可以使用显式扩展语法来捕获数组中的实际参数。
标签: javascript ecmascript-6 arguments