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

146
Visualizações
Me estoy poniendo "indefinido" al agregar caracteres en mi matriz en javascript

Aquí está mi código, ¿alguien puede explicar por qué me estoy volviendo indefinido? Dividí las palabras y luego las invertí y después de invertir intenté almacenarlas en una matriz diferente. Gracias

 const text = document.querySelector("#text"); const reverseText = document.querySelector("#reverseText"); let words = text.innerHTML.split("").reverse(); console.log(words); let reversedWords = []; let counter = 0; for (var i = 0; i <= words.length - 1; i++) { if (words[i] != " ") { reversedWords[counter] += words[i]; } else { counter++; } } console.log(reversedWords);
 <p id="text">hello nixit</p> <p id="reverseText"></p>

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

0

Su problema es que la primera vez que intenta acceder a reversedWords[counter] , no está undefined porque ha inicializado reversedWords para que sea una matriz vacía.

Sin cambiar gran parte de su código (porque dijo que lo está haciendo de esta manera como un desafío ), podría intentar inicializar palabras reversedWords para tener la cantidad adecuada de elementos, inicializados en cadenas vacías

 const content = text.textContent; const words = content.split("").reverse(); const reversedWords = Array.from({ length: content.split(" ").length }, () => "");
about 4 years ago · Juan Pablo Isaza Relatório

0

Está utilizando una matriz, por lo que necesita push cosas en ella y luego join en una nueva cadena una vez que finaliza la iteración.

 const text = document.querySelector('#text'); const reverseText = document.querySelector('#reverseText'); function reverse(str) { // `split` the string on the spaces const words = str.split(' '); const reversedWords = []; for (let i = 0; i < words.length; i++) { // For each word split, reverse, and then rejoin it const word = words[i].split('').reverse().join(''); // And then add the word to the array reversedWords.unshift(word); } // Return the completed array return reversedWords; } const str = text.textContent; reverseText.textContent = JSON.stringify(reverse(str));
 <p id="text">hello nixit</p> <p id="reverseText"></p>

Documentación adicional

  • unshift
about 4 years ago · Juan Pablo Isaza Relatório

0

Sugiero usar una cadena en lugar de una matriz. Luego puede dividirlo para convertirlo en una matriz.

 const reversedChars = 'hello nixit'.split("").reverse() const reversedWords = '' reversedChars.forEach(char => { reversedWords += char }) const reversedWordsArray = reversedWords.split(' ') console.log(reversedWords) // Output: tixin olleh console.log(reversedWordsArray) // Output: [ 'tixin', 'olleh' ]
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