gpt4 book ai didi

javascript/jquery 从计数数组构建数组

转载 作者:行者123 更新时间:2023-11-30 07:08:54 25 4
gpt4 key购买 nike

嘿,我有一个简单的问题,我找不到答案,我正在尝试为图表生成一些原始数据

假设我有一个像这样的数组:

[1,0,0,1,2,0]

有没有办法用它制作一个数组,该数组具有表示重复条目计数的嵌套数组?

[[0,3],[1,2],[2,1]]

这里有一些代码可以解决这个问题,但将计数保存为对象

var array = [1,0,0,1,2,0];
var length = array.length;
var objectCounter = {};

for (i = 0; i < length; i++) {

var currentMemboerOfArrayKey = JSON.stringify(array[i]);

var currentMemboerOfArrayValue = array[i];

if (objectCounter[currentMemboerOfArrayKey] === undefined){

objectCounter[currentMemboerOfArrayKey] = 1;
}else{
objectCounter[currentMemboerOfArrayKey]++;
}
}

但是 objectCounter 像这样返回它们

{0:3,1:2,2:1}

但我需要它作为我在上面指定的数组?

如有任何帮助,在此先感谢

最佳答案

尝试

var array = [1, 0, 0, 1, 2, 0];

function counter(array) {
var counter = [],
map = {}, length = array.length;
$.each(array, function (i, val) {
var arr = map[val];
if (!arr) {
map[val] = arr = [val, 0];
counter.push(arr);
}
arr[1] += 1;
})

return counter;
}
console.log(JSON.stringify(counter(array)))

演示:Fiddle

关于javascript/jquery 从计数数组构建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20607300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com