计数JavaScript中数数组数组的发生



您如何计算普通JavaScript中数字数组的出现数量?这样的地方(想象一下这些数字设置数百个(:

[2, 5, 66, 199]
[32, 56, 88, 109]
[13, 45, 102, 200]
[2, 5, 66, 199]
[2, 5, 66, 199]
[32, 56, 88, 109]

会给我这样这样的东西:

2, 5, 66, 199 -> 3 times
32, 56, 88, 109 -> 2 times
13, 45, 102, 200 -> 1 time

从数组创建字符串,并将其用作对象中的键。如果需要[1, 2] != [2, 1],请在join方法之前删除sort

const data = [[2, 5, 66, 199],[32, 56, 88, 109],[13, 45, 102, 200],[2, 5, 66, 199],[2, 5, 66, 199],[32, 56, 88, 109]]
const result = data.reduce((r, e) => {
  const arr = e.sort().join(',');
  r[arr] = (r[arr] || 0) + 1;
  return r;
}, {});
console.log(result)

相关内容

  • 没有找到相关文章

最新更新