我想编写一个遍历数组的函数,并将为每个单独的字符串分配一个列表号。在有两个相同的字符串彼此相邻的情况下,我希望此列表号重复。例如,如果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
答案 0 :(得分:2)
保持count
以1开头。
检查current index value
和next index value
是否不同,将计数加1,否则保持原样。
const arr = ["a", "b", "b", "c", "d"]
let count =1;
arr.forEach((e,index)=>{
console.log(count , ' . ', arr[index] )
if(e !== arr[index+1]){
count++;
}
})