JavaScript: Trouble with reduce

JavaScript: Trouble with reduce

本文关键字:reduce with Trouble JavaScript      更新时间:2023-09-26

我试图在一个较大的组中获得一个数组的和。代码更新第一个数组中的第一个数组值,但是reduce函数不起作用。下面是代码:

JavaScript (HTML查看结果):

var boughtRaw = [[0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0]];
var boughtCalc = function (level) {
    boughtRaw[0[0]] = 5
    var Raw = boughtRaw[level];
    window["boughtList" + level] = Raw.reduce(function(a, b) {
    return a + b;}, 0);
  };
 
boughtCalc(0);  
document.getElementById("debug").innerHTML = boughtList0;
  /* Should return 5 */
<span id="debug" style="border: 1px dashed red">Debug</span>

您必须将boughtRaw[0[0]] = 5更正为这一行boughtRaw[0][0] = 5

var boughtRaw = [[0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0]];
var boughtCalc = function (level) {
    boughtRaw[0][0] = 5; // corrected
    var Raw = boughtRaw[level];
    window["boughtList" + level] = Raw.reduce(function(a, b) {
    return a + b;}, 0);
  };
 
boughtCalc(0);  
document.getElementById("debug").innerHTML = boughtList0;
/* return 5 */
<span id="debug" style="border: 1px dashed red">Debug</span>


访问数组的元素(of array ..)数组)你必须放置[]...[]相邻的,不像这个[[...[]]]

var element1 = array[0] // get first element of array
var element2 = element1[0] // get first element of element1 
.....
var result = elementN[0] // get first element of elementN

可以用

代替
var result = array[0][0]...[0].