我如何使用数组在 Javascript 中绘制直方图

我可以用一个数组在javascript中制作一个直方图吗,例如:

array = [1, 2, 2];

结果:

1: *
2: **

我试过这个:

array.reduce((acum,cur) => Object.assign(acum,{[cur]: (acum[cur] | 0)+1}),{});

我的结果:

{1: 1, 2: 2}

谢谢



慕娘9325324
浏览 188回答 1
1回答

largeQ

您需要一个逻辑 OR||(而不是按位 OR|)。var array = [1, 2, 2],    result = array.reduce((acum, cur) => ({ ...acum, [cur]: (acum[cur] || 0) + 1 }), {});console.log(result);如果你喜欢拿'*'而不是计数,你可以加星。var array = [1, 2, 2],    result = array.reduce((acum, cur) => ({ ...acum, [cur]: (acum[cur] || '') + '*' }), {});console.log(result);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript