<分区>
我有如下数组
myArray = ["foo", "bar", "foo", "bar", "bar", "bar", "zoom"]
我想要这样的输出
nameArray = ["foo", "bar", "zoom"]
和
qtyArray = [2, 4, 1]
我将使用 Plotly 从生成的两个数组中绘制条形图。
TIA
<分区>
我有如下数组
myArray = ["foo", "bar", "foo", "bar", "bar", "bar", "zoom"]
我想要这样的输出
nameArray = ["foo", "bar", "zoom"]
和
qtyArray = [2, 4, 1]
我将使用 Plotly 从生成的两个数组中绘制条形图。
TIA
最佳答案
你可以拿一个Map
并获取键和值。
var array = ["foo", "bar", "foo", "bar", "bar", "bar", "zoom"],
map = array.reduce((m, v) => m.set(v, (m.get(v) || 0) + 1), new Map),
values = [...map.keys()],
counts = [...map.values()];
console.log(...values);
console.log(...counts);
关于Javascript - 在Group-by之后将一个数组转换为两个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58452208/