Programas

Como reverter uma string em JavaScript [passo a passo]

Como reverter uma string em JavaScript [passo a passo]

Um palíndromo é uma palavra ou lista de caracteres cuja leitura é a mesma quando invertida. Um bom exemplo disso é a palavra 'RADAR'.

A maneira mais fácil de verificar a existência de um palíndromo em JavaScript é criar uma cópia da string original, invertê-la e compará-la. Se quiser construir um algoritmo que faça isso de forma eficaz, você precisará aprender como reverter uma string em JavaScript. Neste guia, você aprenderá como.

Como faço para reverter uma string com JavaScript?

1. Converta-o em uma matriz e inverta-o

  1. Divida sua string em uma série de substrings usando o Dividido() método da classe de objeto String. O método de divisão requer uma string como argumento. Nesse caso, você usará uma string vazia. Portanto, o método deve ser semelhante a este:
    Dividido("")
  2. Inverta a ordem da matriz usando o reverter() método.
  3. Converta a matriz de volta em uma string usando o Junte-se() método. Muito parecido com o método de divisão, o método de junção requer uma string como argumento. Mais uma vez, você usará uma string vazia:
    Junte-se("")

A melhor maneira de implementar as etapas acima é por meio de uma função. Aqui está um exemplo rápido de código-fonte que você pode copiar, testar e modificar:




O Grande Reverso!


String atual: "Reverse esta string!"


Reverter


function myFunction ()
var str = "Reverter esta string!";
var res = str.split (""); // Divide a string em um array de caracteres
res.reverse (); // Inverte a ordem da matriz de caracteres
str = res.join ("");
document.getElementById ("demo"). innerHTML = str; // Anexe a string à demonstração HTML



No exemplo acima, criamos uma função que reverte uma string codificada e, em seguida, define um elemento de documento para ela. A função é então chamada a partir de um botão denominado 'Reverter'.

Existem várias maneiras de reduzir e modificar esse código. Por exemplo, em vez de atribuir a string unida ao str variável, você pode reatribuí-la ao res variável e, em seguida, aponte o elemento do documento HTML de demonstração para ela, por exemplo.

res = res.join ("");
document.getElementById ("demo"). innerHTML = res;

Como alternativa, você pode condensar todas as três etapas em uma única linha:

var res = str.split (""). reverse (). join ("");

De qualquer forma, os resultados devem ser os mesmos:


Quer aprender JavaScript ainda mais rápido? Aprenda por que você deve baixar o código JavaScript lendo este artigo!


2. Reverta a string em JavaScript usando um loop for

  1. Crie uma nova variável de string vazia que irá abrigar a string invertida.
    var reverseString = "";
  2. Construa um loop for com as seguintes características:
    • Inicializador: inicializa um contador cujo valor é o comprimento da string a ser revertida subtraída por 1.
    • Condição: certifique-se de que o contador é maior ou igual a 0.
    • Iteração: o contador deve diminuir a cada loop bem-sucedido.
    • O corpo do loop for deve adicionar um caractere da string original ao que se tornará a string invertida ao usar o contador do loop for para definir a posição do caractere.
      for (var i = fwdStri.length - 1; i> = 0; i--) reverseString = newString + fwdStr [i]; 

Mais uma vez, você deve aplicar a operação acima em uma função dentro de tags de script. Se você deseja incluir o JavaScript como um arquivo externo ou código incorporado, depende de você. Veja como a solução acima funciona:

   

O Grande Reverso!

String atual: "Reverse esta string!"

Função reversa minhaFunção () var fwdString = "Reverter esta String!"; var reverseString = ""; for (var i = fwdString.length - 1; i> = 0; i--) reverseString + = fwdString [i]; // Alternativa para newString + fwdString [i] document.getElementById ("demo"). InnerHTML = reverseString;

O código acima funciona fazendo um loop através de sua string original no sentido inverso e a clona caractere por caractere. Se você não estiver interessado em lançar explicitamente sua string em uma matriz, poderá encontrar esta solução mais adequada para seus objetivos.


3. Reverta a string em JavaScript usando recursão

  1. Crie uma nova função com uma string como parâmetro, por exemplo.
    function reverseString (str) 
  2. Dentro do corpo da função, crie um E se instrução que verifica se a string passada para a função está vazia. Se verdadeiro, deve retornar uma string vazia, por exemplo.
    if (str === "") return "";
  3. Adicionar outra declaração.
  4. No corpo da instrução else, retorne uma chamada recursiva para o método atual com uma substring do parâmetro de string do método, começando com o segundo caractere, por exemplo str.substr (1). Anexe a primeira letra da nova substring, por exemplo.
    senão return reverseString (str.substr (1)) + str.charAt (0);

Você deve chamar esse método de outra função que é responsável por exibir os resultados. O código completo deve ser semelhante a este:

   

O Grande Reverso!

String atual: "Reverse esta string!"

Função reversa myFunction () var str = this.reverseString ("Reverse this String!"); document.getElementById ("demo"). innerHTML = str; function reverseString (str) if (str === "") return ""; senão return reverseString (str.substr (1)) + str.charAt (0);

A recursão funciona como um loop for, mas você está enganando a lógica do JavaScript para funcionar para você. Em vez de anexar caracteres ao final da string, ele os anexa à frente com cada loop. No entanto, os resultados são praticamente os mesmos.

Os exemplos acima podem ser testados usando o bloco de notas do Windows e um navegador da web. No entanto, sugerimos usar um editor de código de plataforma cruzada ou um ambiente de desenvolvimento integrado para economizar tempo.

Como reverter uma string em um Javascript é uma pergunta comum em entrevistas. Portanto, entendê-lo pode ser fundamental para o seu sucesso como desenvolvedor de software.

No entanto, deixe-nos saber qual método funcionou melhor para você nos comentários abaixo. Como sempre, obrigado por ler.

FAQ: Saiba mais sobre JavaScript

Para corrigir o void 0 de JavaScript no Chrome, dê uma olhada em nosso guia detalhado de correção de erros javascript: void (0).

Para corrigir o erro de JavaScript no processo principal, siga os métodos apresentados em nosso útil Fix JavaScript no guia do processo principal.

O método splice em JavaScript adiciona ou remove itens de uma matriz.

Todos os problemas corrigidos pelo Windows Update Rollup [maio de 2014]
A Microsoft está cuidando da segurança de seus produtos, lançando atualizações oportunas para seus produtos. Hoje, vamos listar todos os problemas qu...
Patch KB2969339 lançado para corrigir alguns erros de atualização do Windows 8.1
Há algum tempo, falamos sobre vários erros que os usuários do Windows 8.1 estavam recebendo ao tentar instalar a atualização mais recente do Windows 8...
Veja como corrigir o problema de drenagem da bateria do Surface Pro 3 sem pagar US $ 500 por uma bateria nova
O problema do consumo de bateria no Surface Pro 3 é uma saga sem fim, assim como as reinicializações aleatórias no Lumia 950 e Lumia 950 XL. Na verdad...