计算JavaScript数组元素的出现次数并放入新的2d数组中
我们需要编写一个JavaScript函数,该函数接受一组文字值。然后,函数应计算输入数组每个元素的频率,并在此基础上准备一个新数组。
例如-如果输入数组是-
const arr = [5, 5, 5, 2, 2, 2, 2, 2, 9, 4];
那么输出应该是-
const output = [ [5, 3], [2, 5], [9, 1], [4, 1] ];
示例
为此的代码将是-
const arr = [5, 5, 5, 2, 2, 2, 2, 2, 9, 4]; const frequencyArray = (arr = []) => { const res = []; arr.forEach(el => { if (!this[el]) { this[el] = [el, 0]; res.push(this[el]) }; this[el][1] ++ }, {}); return res; }; console.log(frequencyArray(arr));
输出结果
控制台中的输出将是-
[ [ 5, 3 ], [ 2, 5 ], [ 9, 1 ], [ 4, 1 ] ]