如何在JavaScript?中计算数组的每个元素及其先前元素的总和;
例如,如果我有一个数组[1,2,3,4],我想计算1+2、1+2+3和1+2+3+4并返回一个新数组。我该怎么做如何在JavaScript?中计算数组的每个元素及其先前元素的总和;,javascript,Javascript,例如,如果我有一个数组[1,2,3,4],我想计算1+2、1+2+3和1+2+3+4并返回一个新数组。我该怎么做 let arr = [1, 2, 3, 4]; doSomething(arr); output... newArr = [1, 3, 6, 10]; 可以对数组进行切片以获取所需元素,并减少求和的值 方法: 为了得到一个新的和数组 返回数组的一部分 用于添加所有值 var数组=[1,2,3,4], sums=array.map((μ,i,a)=>a.slice(0,i
let arr = [1, 2, 3, 4];
doSomething(arr);
output...
newArr = [1, 3, 6, 10];
可以对数组进行切片以获取所需元素,并减少求和的值 方法:
- 为了得到一个新的和数组
- 返回数组的一部分
- 用于添加所有值
var数组=[1,2,3,4],
sums=array.map((μ,i,a)=>a.slice(0,i+1)。reduce((a,b)=>a+b));
控制台日志(总和)代码>添加此函数
function dosomething (arr) {
var i;
if(i === 1 || i === 0) return arr;
for(i = 1; i<arr.length; i++){
arr[i] += arr[i-1];
}
return arr;
}
功能剂量仪(arr){
var i;
如果(i==1 | | i==0)返回arr;
对于(i=1;i,您可以尝试使用array.reduce
让arr=[1,2,3,4];
设newArr=[];
arr.reduce((prev,current)=>{newArr.push(prev+current);返回prev+current},0);
console.log(newArr);
一些优雅的方法:
函数getArrSum(arr)
{
如果(!arr.length)返回[];
设tmp=[arr[0]];
对于(设i=1;ivar a=[1,2,3,4];
var b=[];
对于(i=0;i首先,我想分享一个链接,展示什么应该是一个好问题。
关于阵列的计算是:
函数getArray(数字)
{
如果(!number.length)返回[];
让数组=[number[0]];
for(设i=1;i console.log(getArray(array));
到目前为止您尝试了什么?这将是一个很好的练习来练习您的技能
var a = [1,2,3,4];
var b=[];
for(i=0;i<a.length;i++)
{
var sum = 0;
for(j=0;j<=i+1;j++)
{
if(a[j] != null)
sum=sum+a[j];
}
b[i]=sum;
}