如何计算一个数组中各个元素的出现次数,我们使用reduce()函数来实现,代码具体如下:
<script>
//计算每个元素出现的次数
let arr = ['name', 'age' ,'long','job','long' ,'name' , 'name'];
let result = arr. reduce( function(pre, cur)
//pre为上一次运算结果的返回值,cur当前元素的值
{
if (!pre[cur]) { pre[cur] = 1;
}
//当前元素不在上一次返回结果内,则返回值为1,否则+1
else {
pre[cur]++;
}
return pre ;
//返回计算结果
},{})//这个参数为计算的初始值
console. log(result);
</script>
最后结果:
// { name: 3, age: 1, long: 2, job:1 }
|