此问题已经在这里有了答案:
我有一些水果作为
fruits = ['apple', 'banana', 'orange', 'kiwi', 'pineapple', 'banana', 'apple', 'banana', 'orange', 'banana', 'apple', 'banana', 'orange', 'banana']
查找数组中项的数量并将其显示为诸如之类的对象的最佳方法是什么>
{ apple: 3, kiwi: 1, banana: 4 }
依此类推。
我有一些水果作为水果= ['苹果','香蕉','橙色','猕猴桃','菠萝','香蕉','苹果','香蕉','橙色','香蕉','apple','banana','orange','banana']什么是最好的...
基于Array#reduce()
的简单解决方案如下:
const fruits = ['apple', 'banana', 'orange', 'kiwi', 'pineapple',
'banana', 'apple', 'banana', 'orange', 'banana',
'apple', 'banana', 'orange', 'banana'];
const counts = fruits.reduce((acc, item) =>
({ ...acc, [item] : (acc[item] || 0) + 1 }), // Accumulate fruit count
{});
console.log(counts);