以相同字符开头的数组

时间:2018-09-28 05:57:23

标签: javascript arrays loops

如何检查以相同字符开头的数组的数量?例如,我有3个以0开头的数组,2个以1开头的数组和3个以2开头的数组。 很少有for循环的最佳方法

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以使用.reduce()方法创建一个以第一个元素为键,其值为count的结果对象,如下所示:

let data = [
  [0, 0],
  [0, 1],
  [0, 2],
  [1, 1],
  [1, 2],
  [2, 0],
  [2, 1],
  [2, 2],
];

let result = Object.entries(
  data.reduce((a, [f]) => (a[f] = (a[f] || 0) + 1, a), {})
);

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }