Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

78
Vistas
cómo recorrer dos índices en javascript

por qué me está dando el primer índice y necesito la salida a continuación que es "¡Deja de hacer memes de Bob Esponja!"

 function spongeMeme(sentence) { let x = sentence.split(""); for(let i = 0; i < sentence.length;i+=2){ return x[i].toUpperCase() } } console.log(spongeMeme("stop Making spongebob Memes!")) // S // output : StOp mAkInG SpOnGeBoB MeMeS!"
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Prueba esto:

 function spongeMeme(sentence) { let x = sentence.split(""); let newSentence = ''; for(let i = 0; i < sentence.length;i++){ // If the letter is even if(i % 2 ==0) { newSentence += x[i].toUpperCase(); } // If the letter is odd else { newSentence += x[i].toLowerCase(); } } return newSentence } console.log(spongeMeme("stop Making spongebob Memes!"))

En primer lugar, solo puede devolver una vez por función, por lo que debe crear una variable y almacenar toda la letra nueva dentro y, al final, devolver esta variable.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Está devolviendo solo la primera letra de lo que está almacenado dentro de x. Intenta depurarlo y ver qué está pasando.

La forma en que lo haría es así:

 function spongeMeme(sentence) { return sentence.split("") .map((s, i) => (i % 2 != 0 ? s.toUpperCase() : s)) .join(""); } console.log(spongeMeme("stop Making spongebob Memes!"));
about 4 years ago · Juan Pablo Isaza Denunciar

0

Inmediatamente regresa en la primera iteración de su ciclo for, de ahí la razón por la que solo obtiene una sola letra.

Comencemos arreglando su código existente:

 function spongeMeme(sentence) { let x = sentence.split(""); for(let i = 0; i < sentence.length; i+=2) { // You can't return here. Update the value instead. return x[i].toUpperCase() } // Join your sentence back together before returning. return x.join(""); } console.log(spongeMeme("stop Making spongebob Memes!"))

Eso funcionará, pero podemos limpiarlo. ¿Cómo? Haciéndolo más declarativo con map.

 function spongeMeme(sentence) { return sentence .split('') // convert sentence to an array .map((char, i) => { // update every other value return (i % 2 === 0) ? char.toUpperCase() : char.toLowerCase(); }) .join(''); // convert back to a string }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda