2017-10-20 4 views
0

配列があり、文字列の一致数を見つける必要があります。配列の一致数を計算するLodash

Array = ['car','road','car','ripple']; 

    Array.forEach(function(element) { 
     // Here for every element need to see how many there are in the same array. 
     // car = 2 
     //road = 1 
//... 
    }, this); 

答えて

2

_.countByの方法を使用してください。あなたはオブジェクトを持っています。ここで、キーは配列内にあり、値は適切な文字列の出現数です。

var arr = ['car','road','car','ripple']; 
 

 
console.log(_.countBy(arr));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.js"></script>

1

バニラJSでは、Array#reduce使用することができます。

var array = ['car','road','car','ripple']; 
 

 
var result = array.reduce(function(r, str) { 
 
    r[str] = (r[str] || 0) + 1; 
 

 
    return r; 
 
}, {}); 
 

 
console.log(result);