我想在javascript的数组中将前面的数字添加到当前数字中?

我想在javascript的数组中将前面的数字添加到当前数字中?,javascript,Javascript,var结果应为[4,8,15,21,11]。 但是我得到[4,4,4,4,4]。 我就是搞不懂这个 变量数=[1,3,5,10,11]; var result=numbers.mapfunctioni{ var-num; var num2; 对于i=0;iidxx+arr[i+1]| | 0 //->对于每个迭代,返回其值+下一次迭代的值,如果是最后一次,则返回0。为什么要重用变量名i?这看起来有点像家庭作业。把一个控制台日志放在循环的中间。而且,要学究式的,你的问题的标题与你预期的输出不匹配

var结果应为[4,8,15,21,11]。 但是我得到[4,4,4,4,4]。 我就是搞不懂这个

变量数=[1,3,5,10,11]; var result=numbers.mapfunctioni{ var-num; var num2; 对于i=0;iconsole.logresult 下一种简化的实现方法是:

变量数=[1,3,5,10,11]; var result=numbers.map x、 idx,arr=>idx.as console wrapper{max height:100%!important;top:0;}map函数为您提供值,i。您的使用有点错误,也不需要for循环。在forloop中,您还重写了map函数中的i变量

变量数=[1,3,5,10,11]; var result=numbers.mapfunctionnum,i,arr{ 如果arr[i+1]{ 返回num+arr[i+1]; } 返回num; }; console.log'result',result;
log'expected',[4,8,15,21,11] 您不需要在map方法中使用另一个循环。此外,您正在超越定义为贴图当前值的i值

document.body.innerText=[1,3,5,10,11].mapx,i,arr=>x+arr[i+1]| | 0
//->对于每个迭代,返回其值+下一次迭代的值,如果是最后一次,则返回0。为什么要重用变量名i?这看起来有点像家庭作业。把一个控制台日志放在循环的中间。而且,要学究式的,你的问题的标题与你预期的输出不匹配。数字数组永远不会改变。for循环不向数组或任何其他变量返回num+num2。