Javascript 如何计算Java脚本数组中的项,但仅当项彼此相邻时才计算?

Javascript 如何计算Java脚本数组中的项,但仅当项彼此相邻时才计算?,javascript,arrays,count,equals,Javascript,Arrays,Count,Equals,例如,我有这样一个数组 {约翰,约翰,约翰,玛丽亚,彼得,彼得,玛丽亚,安娜,安娜,玛丽亚,玛丽亚,彼得} 我需要得到像这样的结果 1->3 2->1 3->2 4->1 5->2 6->2 7->1我把名字分组,然后数一数 const数组=['John'、'John'、'John'、'Maria'、'Peter'、'Maria'、'Anna'、'Anna'、'Maria'、'Maria'、'Peter']; 设final=[]; const count=array.forEach(项=>{

例如,我有这样一个数组
{约翰,约翰,约翰,玛丽亚,彼得,彼得,玛丽亚,安娜,安娜,玛丽亚,玛丽亚,彼得}
我需要得到像
这样的结果

1->3
2->1
3->2
4->1
5->2
6->2

7->1

我把名字分组,然后数一数

const数组=['John'、'John'、'John'、'Maria'、'Peter'、'Maria'、'Anna'、'Anna'、'Maria'、'Maria'、'Peter'];
设final=[];
const count=array.forEach(项=>{
//检查数组中的最后一项是否具有相同的名称
if(final[final.length-1]&&final[final.length-1][0]==项目){
最终[final.length-1]。推送(项目)
}否则{
//如果名称不同,则创建一个新分组
最终[最终.长度]=[项目]
}
})
console.log(final.map(item=>item.length))//返回每个组的大小

console.log('final array',final)
完美解决方案。这正是我需要的!多谢各位