Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

100
Visualizações
Encontrar el mismo elemento de matriz en una matriz diferente y cambiarle el nombre para que sea incremental

Encontrar el mismo elemento de matriz en otra matriz y cambiarle el nombre para que sea incremental. en el siguiente script, me gustaría incrementar el mismo elemento a +1 dinámicamente sin poner manualmente "motor" para que se le cambie el nombre como "motor 1"

Para un ejemplo, caso de uso

 //original array ["car","motor","bicycle","tricyle","motor"] //result should be ["car","motor","bicycle","tricyle","motor 1"]

Este es el script que probé

 let _temparr = ["car","motor","bicycle","tricyle","motor"] let _newarr = new Array(); let counter = 0; for(let i = 0 ; i < _temparr.length;i++){ // Push _temparr element to _newarr for(let a = 0; a < _newarr.length; a++){ // if _newarr consist of motor , increment counter +1 and push as "Motor 1" if(_newarr[i] === "motor"){ counter++ _newarr.push(_temparr[i] + counter) } } _newarr.push(_temparr[i])

La lógica con la que salí es, bucle _temparray y lo empujaré a un nuevo arrau que es :_newarr , dentro del primer bucle de _newarr si encuentra el mismo elemento en _temparray. el contador se incrementará. pero no estoy seguro de cuál es la mejor práctica para hacer esto. encontré algunos temas sobre el uso de const found = arr1.some(r=> arr2.includes(r)) pero esto se eliminará si tiene el mismo elemento

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede mantener un contador para cada palabra/elemento y usar .map para crear la nueva matriz, actualizando cada elemento según sea necesario:

 const counter = new Map(); console.log( ["car","motor","bicycle","tricyle","motor"].map( element => { if (!counter.has(element)) { counter.set(element, 1); return element; } const count = counter.get(element); counter.set(element, count+1); return element + " " + count; } ) );

about 4 years ago · Juan Pablo Isaza Relatório

0

Tal vez podría considerar usar un Mapa :

 const originalArray = ["car", "motor", "bicycle", "tricyle", "motor"]; const newArray = []; const counter = new Map(); originalArray.forEach(item => { if (counter.has(item)) { newArray.push(`${item} ${counter.get(item)}`); counter.set(item, counter.get(item) + 1); } else { newArray.push(item); counter.set(item, 1); } }); console.log(newArray);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda