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

159
Vistas
Reverse Javascript Capitalized

enter image description here

enter image description here

How to make observe the Capital word behavior ?

source code : enter code here

document.getElementById("btnReverse").onclick = function () {
  reverse();
};

String.prototype.replaceAt = function (index, replacement) {
  if (index >= this.length) {
    return this.valueOf();
  }

  return this.substring(0, index) + replacement + this.substring(index + 1);
};

function reverseWord(word) {
  let wordLength = word.length;
  let reversedWord = word;
  for (let j = 0; j < wordLength / 2; j++) {
    let temp = reversedWord[j];

    reversedWord = reversedWord.replaceAt(j, word[wordLength - 1 - j]);
    reversedWord = reversedWord.replaceAt(wordLength - 1 - j, temp);
  }
  return reversedWord;
}

function reverse() {
  let text = document.getElementById("text").value;

  let splittedText = text.split(" ");

  let reversedWords = [];

  for (let i = 0; i < splittedText.length; i++) {
    let word = splittedText[i];

    let reversedWord = reverseWord(word);
    reversedWords.push(reversedWord);
  }

  document.getElementById("demo").innerHTML = reversedWords.join(" ");
}`enter code here`
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Change the below line of reverse() method and use textContent instead of value.

let text = document.getElementById("text").textContent;

document.getElementById("btnReverse").onclick = function () {
  reverse();
};

String.prototype.replaceAt = function (index, replacement) {
  if (index >= this.length) {
    return this.valueOf();
  }

  return this.substring(0, index) + replacement + this.substring(index + 1);
};

function reverseWord(word) {
  let wordLength = word.length;
  let reversedWord = word;
  for (let j = 0; j < wordLength / 2; j++) {
    let temp = reversedWord[j];
    let rightChar = word[wordLength - 1 - j];
    if(j === 0 && wordLength > 1 && word[j].toUpperCase() === word[j]) {
      temp = temp.toLowerCase();
      rightChar = rightChar.toUpperCase();
    }
    reversedWord = reversedWord.replaceAt(j, rightChar);
    reversedWord = reversedWord.replaceAt(wordLength - 1 - j, temp);
  }
  return reversedWord;
}

function reverse() {
  let text = document.getElementById("text").textContent;

  let splittedText = text.split(" ");
  let reversedWords = [];
  for (let i = 0; i < splittedText.length; i++) {
    let word = splittedText[i];

    let reversedWord = reverseWord(word);
    reversedWords.push(reversedWord);
  }

  document.getElementById("demo").innerHTML = reversedWords.join(" ");
}
<html>
<head></head>
<body>
<div>
<button id="btnReverse">Reverse</button>
<div id="text">I am A Great human</div>
<div id="demo"></div>
</div>
</body>
</html>

about 4 years ago · Juan Pablo Isaza Denunciar

0

This function re-capitalize a reversed word:

function reCapitalize(word) {  
    // Check if last letter is an uppercase
    // If so, return the word with first letter converted to capital
    if (word[word.length - 1] === word[word.length - 1].toUpperCase())
        return word[0].toUpperCase() + word.toLowerCase().substring(1, word.length);

   // return word unchanged
   return word;
}

So your reverse function will be like this:

function reverseWord(word) {
  let wordLength = word.length;
  let reversedWord = word;
  for (let j = 0; j < wordLength / 2; j++) {
    let temp = reversedWord[j];

    reversedWord = reversedWord.replaceAt(j, word[wordLength - 1 - j]);
    reversedWord = reversedWord.replaceAt(wordLength - 1 - j, temp);
  }
  return reCapitalize(reversedWord);
}
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