2017-09-27 63 views
-2

enter image description hereenter image description heretest我有這樣如何找到在數組中的元素出現的次數在JS

var arr1 = [3, 'a', 'a', 'a', 2, 3, 'a', 3, 'a', 2, 4, 9, 3]; 

我要輸出到像a - 5次 我試圖像下面的數組: -

var count = 0; 
for (var i = 0; i < arr.length; i++) { 
    arr.indexOf(arr[i] > -1) { 
     count++; 
    } 
} 

但沒有工作,任何人都可以請幫助我。謝謝。

+0

具體而言,你需要給'從-index'價值,同時調用'indexOf',例如'(arr.indexOf( arr [i],i)> -1)' – gurvinder372

回答

1
arr1.filter(x => x > -1).length 

或者您可以使用reduce代替(效率更高,可讀性更低)。

0

使用Loadash

var resul = _.countBy([3, 'a', 'a', 'a', 2, 3, 'a', 3, 'a', 2, 4, 9, 3]); 
 
console.log(resul);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.js"></script>

在你的代碼
+0

我想通過僅使用lops a =或其他東西來做到這一點,但不是任何第三方。 – MMR

相關問題