Javascript 如何在数组中字符串相同的情况下重复列表编号

Javascript 如何在数组中字符串相同的情况下重复列表编号,javascript,Javascript,我想写一个函数,它遍历数组并为每个字符串分配一个列表号。在两个相同的字符串相邻的情况下,我希望重复这个列表编号。例如,如果b在第二次和第三次迭代中出现两次,则两者都应该有列表号“2”。我如何做到这一点 const arr = ["a", "b", "b", "c", "d"] function list(){ let count = 1 arr.forEach((x) => { console.log(count + '.' + x) co

我想写一个函数,它遍历数组并为每个字符串分配一个列表号。在两个相同的字符串相邻的情况下,我希望重复这个列表编号。例如,如果b在第二次和第三次迭代中出现两次,则两者都应该有列表号“2”。我如何做到这一点

const arr = ["a", "b", "b", "c", "d"]

function list(){
    let count = 1
    arr.forEach((x) => {
        console.log(count + '.' + x)
        count++
    })
}

list()
应该记录

1.a
2.b
2.b
3.c
4.d

保持
计数
从1开始

检查
当前索引值
下一个索引值
是否不相同,将计数增加1,否则保持不变。
const arr=[“a”、“b”、“b”、“c”、“d”]
让计数=1;
arr.forEach((e,索引)=>{
console.log(计数,'.',arr[索引])
如果(e!==arr[index+1]){
计数++;
}

})
保持
计数
从1开始

检查
当前索引值
下一个索引值
是否不相同,将计数增加1,否则保持不变。
const arr=[“a”、“b”、“b”、“c”、“d”]
让计数=1;
arr.forEach((e,索引)=>{
console.log(计数,'.',arr[索引])
如果(e!==arr[index+1]){
计数++;
}
})