阵列帮助。如何在没有第一个元素的情况下,又没有另一个的最后一个元素的情况下,自己对数组进行乘法运算

问题描述 投票:1回答:2

我的用户输入数组:[1,2,3,4]

我想要的是:

[1,2,3] * [2,3,4](1 * 2)+(2 * 3)+(3 * 4)= 20

到目前为止,我有什么:

var array = [];
var number= document.getElementById("number").value; //this is where user inputs the number for my array

var sum = 0;
for (var i = 0; i< number.length; i++){
    array.push(parseInt(number[i]));
    var first= number[i-1];
    var second = number[i+1];
    sum += (first*second);
}
console.log(sum);
javascript arrays math dom
2个回答
0
投票

不需要为此的数组。

在以下模式中:(1 * 2)+(2 * 3)+(3 * 4),您可以看到使用不带数组的for循环如何发生。

以下作品:

var number= document.getElementById("number").value; //this is where user inputs the number for my array
var sum=0;
for (var i = 1; i< number; i++){
    sum += i*(i+1);
}
console.log(sum);

0
投票

这是我的reduce数组方法的解决方案

[1, 2, 3, 4].reduce((a, c, i, s) => (s[i + 1] ? c * s[i + 1] + a : a), 0);
© www.soinside.com 2019 - 2024. All rights reserved.