2017-09-27 56 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

相关问题