(41个答案)(39个答案)16小时前关门了。
["1", "2", "1", "1", "2", "2", "3"]
blmhpbnm1#
这是一种使用Array.reduce()的方法https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
Array.reduce()
{"1": 3, "2": 3, "3": 1}
{"count": 3, "values": ["1", "2"]}
const data = ["1", "2", "1", "1", "2", "2", "3"]; //returns the number of time each unique value occurs in the array const counts = data.reduce( (counts, item) => { if(item in counts) counts[item] += 1; else counts[item] = 1; return counts; }, {}); console.log(counts); /* { "1": 3, "2": 3, "3": 1 } */ //returns which values and how many times occur the most const max = Object.entries(counts) .reduce((max, [value, count])=> { if(count < max.count) return max; if(count == max.count){ max.values.push(value); return max; } return {count: count, values: [value]}; },{count: 0, values: []}); console.log(max); /* { "count": 3, "values": [ "1", "2" ] } */
1条答案
按热度按时间blmhpbnm1#
这是一种使用
Array.reduce()
的方法https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
{"1": 3, "2": 3, "3": 1}
这样的对象,确定数组中每个唯一值出现的次数{"count": 3, "values": ["1", "2"]}
的对象,确定数组中出现次数最多的值