Javascript 如何将计数推入一维数组以使其成为二维数组

Javascript 如何将计数推入一维数组以使其成为二维数组,javascript,Javascript,我想将一维数组创建为二维数组 我有一个数组arr1,它是1D 现在,我正在将这个1D数组arr1的元素搜索到另一个包含搜索变量的数组arr2。我能够成功地从arr2计算arr1的发生次数,但无法将计数存储在arr1中 arr2=[a,a,a,a,b,d,e,f,f,f,g,g…] var arr1 = ["a","b","c".......] for (i =0; i<shrink_days.length; i++){ var count = arr2.flat().redu

我想将一维数组创建为二维数组

我有一个数组arr1,它是1D

现在,我正在将这个1D数组
arr1
的元素搜索到另一个包含搜索变量的数组
arr2
。我能够成功地从arr2计算arr1的发生次数,但无法将计数存储在arr1中

arr2=[a,a,a,a,b,d,e,f,f,f,g,g…]

var arr1 = ["a","b","c".......]

  for (i =0; i<shrink_days.length; i++){
    var count = arr2.flat().reduce(function(n, val) {
    return n + (val === arr1[i]);
}, 0);
  //arr1[i][1].push(count)
}
var arr1=[“a”、“b”、“c”…]

对于(i=0;i,可以使用包含原始元素和计数的新数组替换第一个数组的元素:

arr1[i]=[arr1[i],计数]

可以说,如果您关心不变性,那么应该保持
arr1
不变,并使用该结构创建第三个数组