Javascript 如何重命名阵列中的多个相同引用

Javascript 如何重命名阵列中的多个相同引用,javascript,Javascript,我想重命名我的元素我有这个数组: 重命名数组中的多个相同引用 var arr=['a','b','c','a','f','r','b','a']; 让tally={a':0,'b':0,'c':0,'d':0,'e':0,'f':0}; 对于(变量i=0;i{ const name=el.name; 理货[名称]=理货[名称]?理货[名称]+1:1; 返回{name:tally[name]>1?`${name}${tally[name]-1}`:name} }) console.log(res

我想重命名我的元素我有这个数组:

重命名数组中的多个相同引用

var arr=['a','b','c','a','f','r','b','a'];
让tally={a':0,'b':0,'c':0,'d':0,'e':0,'f':0};
对于(变量i=0;iconsole.log('arr',arr)
我想你差不多到了。。计数[arr[i]]++没有任何意义。。如果要增加末端的数字,则必须有另一个对象来计算元素。。例:

var arr = ['a', 'b', 'c', 'a', 'f', 'r', 'b', 'a'];
var tally = {};
for (var i = 0; i < arr.length; i++) {
  if(!tally[arr[i]]) {
    tally[arr[i]] = 1;
  }
  else {
    tally[arr[i]] = tally[arr[i]] + 1;
    arr[i] = arr[i] + (tally[arr[i]] - 1);
  }
  console.log(tally);
}
console.log('arr', arr)
var arr=['a','b','c','a','f','r','b','a'];
var-tally={};
对于(变量i=0;i
我想你就快到了。。计数[arr[i]]++没有任何意义。。如果要增加末端的数字,则必须有另一个对象来计算元素。。例:

var arr = ['a', 'b', 'c', 'a', 'f', 'r', 'b', 'a'];
var tally = {};
for (var i = 0; i < arr.length; i++) {
  if(!tally[arr[i]]) {
    tally[arr[i]] = 1;
  }
  else {
    tally[arr[i]] = tally[arr[i]] + 1;
    arr[i] = arr[i] + (tally[arr[i]] - 1);
  }
  console.log(tally);
}
console.log('arr', arr)
var arr=['a','b','c','a','f','r','b','a'];
var-tally={};
对于(变量i=0;i
使用计数记录元素的计数。映射数组并附加大于1的计数

const arr=[{name:'a'},{name:'b'},{name:'c'},{name:'a'},{name:'f'},{name:'r'},{name:'b'},{name:'a'}];
让tally={}
const result=arr.map(el=>{
const name=el.name;
理货[名称]=理货[名称]?理货[名称]+1:1;
返回{name:tally[name]>1?`${name}${tally[name]-1}`:name}
})

console.log(结果)
使用计数来记录元素的计数。映射数组并附加大于1的计数

const arr=[{name:'a'},{name:'b'},{name:'c'},{name:'a'},{name:'f'},{name:'r'},{name:'b'},{name:'a'}];
让tally={}
const result=arr.map(el=>{
const name=el.name;
理货[名称]=理货[名称]?理货[名称]+1:1;
返回{name:tally[name]>1?`${name}${tally[name]-1}`:name}
})

console.log(result)
Read了解调试代码的技巧。Read了解调试代码的技巧。它可以用于对象数组?例如,如果我有var arr=[{name:'a'},{name:'b'},{name:'c'},{name:'a'},{name:'f'},{name:'r'},{name:'b'},{name:'a'})@显示-当然。编辑以说明除对象之外的相同想法。它可以用于对象数组?例如,如果我有var arr=[{name:'a'},{name:'b'},{name:'c'},{name:'a'},{name:'f'},{name:'r'},{name:'b'},{name:'a'})@显示-当然。编辑以说明相同的想法,但使用对象除外。