1
resposta

[Dúvida] Nesse desafio eu gostaria de usar uma função (toUpperCase) mas não estou conseguindo, alguém pode me ajudar por favor!

// Crie uma função que receba uma string e verifique se é um palíndromo (uma palavra que é lida da mesma forma de trás para frente) utilizando o método de string reverse().
// Retorne true se for um palíndromo e false caso contrário. Imprima o resultado no console.

function palindromo(texto) {
const stringinvertida = inverterString(texto);
if (texto === stringinvertida) {
return true;
} else {
return false;
}
}
function inverterString (string) {
return string.split('').reverse().join('');
}
console.log (palindromo('tenet'));

1 resposta

Olá! Sim, é importante usar toUpperCase() (ou toLowerCase()), para normalizar a string antes da comparação.
Aqui está como você pode adaptar sua função:

function palindromo(texto) {
  const textoNormalizado = texto.toUpperCase(); // ou .toLowerCase()
  const stringInvertida = inverterString(textoNormalizado);
  
  return textoNormalizado === stringInvertida;
}

function inverterString(string) {
  return string.split('').reverse().join('');
}

console.log(palindromo('Tenet')); // true
console.log(palindromo('Ana'));   // true
console.log(palindromo('Carro')); // false

Agora texto.toUpperCase() transforma a string para letras maiúsculas, então a comparação ignora diferenças entre 'A' e 'a'.
A comparação === agora é feita entre strings com a mesma capitalização, garantindo mais robustez.