Inverter texto, palavras e linhas
Escolha o que inverter: os caracteres, a ordem das palavras, a ordem das linhas ou cada palavra no lugar. A inversão se baseia no que você vê, e não no que o navegador armazena, então os acentos ficam sobre a letra certa e os emojis sobrevivem inteiros.
Por que inverter uma string é mais difícil do que uma linha de código
A versão que todo mundo escreve primeiro é s.split('').reverse().join(''). Funciona com inglês simples e destrói silenciosamente todo o resto, porque o JavaScript guarda texto como unidades de código UTF-16, e não como os caracteres que uma pessoa reconheceria. Há três maneiras diferentes de isso dar errado.
- Pares substitutos. Todo caractere acima de U+FFFF — a maioria dos emojis, alguns caracteres CJK mais raros, todas as escritas históricas — é guardado como duas unidades de código. Inverter troca as duas de lugar, deixando uma ordem inválida, e o navegador desenha dois quadrados de substituição.
- Marcas de combinação. Uma letra acentuada pode ser guardada como uma letra base seguida de uma marca de combinação: "e" mais U+0301 aparece como é. Inverta a sequência e o acento cai antes da letra a que pertence, onde gruda no que estiver na frente agora. O acento vai parar na palavra errada.
- Sequências unidas. Um único emoji costuma ser vários: o emoji de programadora é uma pessoa, um caractere de união de largura zero e um notebook. Invertidos, os pedaços saem numa ordem sem renderização definida e você recebe dois emojis sem relação em vez de um. As bandeiras são piores — são duas letras indicadoras regionais, então uma bandeira invertida pode virar outro país ou coisa nenhuma.
Espalhar a string com Array.from resolve o primeiro problema e nenhum dos outros. O que resolve os três é o Intl.Segmenter com granularidade de grafema, que agrupa os pontos de código naquilo que uma pessoa conta como um caractere. Esta ferramenta usa isso e recorre aos pontos de código em navegadores velhos demais para ter o recurso — a observação embaixo dos botões avisa quando é o caso.
Quatro coisas que "inverter" pode significar
Inverter os caracteres do texto inteiro também vira do avesso a ordem das linhas e a ordem das palavras, o que normalmente não é o que as pessoas querem. Os modos acima separam as coisas:
- Inverter caracteres — o espelho literal do texto inteiro, último caractere primeiro.
- Inverter ordem das palavras — as palavras saem de trás para frente, cada uma ainda escrita corretamente. É este que você quer para testar uma ordenação, ou para um quebra-cabeça de ordem de palavras.
- Inverter ordem das linhas — a última linha vira a primeira. Útil para arquivos de log que imprimem o mais novo por último, ou para virar uma lista cronológica.
- Inverter cada palavra — cada palavra escrita de trás para frente no lugar, com a estrutura da frase intacta.
Texto da direita para a esquerda não precisa ser invertido
Árabe, hebraico, persa e urdu são guardados em ordem lógica — a ordem em que você os fala — e o navegador cuida sozinho da exibição da direita para a esquerda. Inverter a string dá um texto que está logicamente de trás para frente e ainda é exibido da direita para a esquerda, ou seja, errado duas vezes. Se você está testando uma interface para layout RTL, defina o atributo dir como rtl e use texto traduzido de verdade. Latim invertido não substitui isso.
Texto de cabeça para baixo é uma fantasia
O modo de cabeça para baixo não gira nada. Ele troca cada letra por um caractere Unicode diferente que por acaso se parece com a letra virada: ɐ é um a latino virado do alfabeto fonético, ᄅ é uma consoante hangul fazendo as vezes de 2, ㄣ é uma letra bopomofo fazendo as vezes de 4. Depois o texto é invertido para que se leia corretamente se você girar a tela.
Isso tem consequências que vale a pena conhecer antes de colar em um perfil. Um leitor de tela anuncia os caracteres reais, então sua bio é lida como uma sequência de letras fonéticas e coreanas. As buscas não vão encontrar o texto. Fontes que não têm esses glifos mostram quadrados vazios, o que é comum em Android antigo e em alguns leitores de livros digitais. Algumas plataformas removem ou normalizam os caracteres ao salvar. E as letras maiúsculas não têm forma virada neste mapa, então saem com o desenho das minúsculas.
Para o que inverter não serve
Não é ofuscação. Qualquer pessoa lê um texto invertido se pensar um segundo, e uma linha de código desfaz o trabalho, então serve para esconder um spoiler de um olhar casual e não serve para nada que você precise mesmo manter em sigilo.
Também não é espelhamento. Inverter caracteres deixa parênteses e aspas virados para o mesmo lado de antes, então (hi) vira )ih( — correto como inversão, quebrado como imagem espelhada. Só o modo de cabeça para baixo troca os caracteres emparelhados, porque ali o objetivo é justamente que o resultado se leia como texto.
Por fim, ele não faz ideia do que o seu texto significa. Marcação, indentação, colunas de CSV e código saem todos destruídos estruturalmente. Inverta as palavras de uma frase, não as de um arquivo de configuração.
Perguntas frequentes
Inverter quebra os emojis?
Aqui não. A ferramenta divide o texto em grafemas — as unidades que uma pessoa enxerga como um caractere só — então emojis de várias partes, bandeiras e modificadores de tom de pele ficam intactos. A abordagem ingênua de partir a string nas suas unidades de código quebra tudo isso, e é por isso que emojis invertidos aparecem como quadrados vazios em outros lugares.
Como inverto a ordem das palavras mantendo a grafia?
Use o modo "Inverter ordem das palavras". Ele vira a sequência de palavras de cada linha e deixa cada palavra escrita do jeito que você digitou. "Inverter cada palavra" faz o oposto: ordem das palavras intacta, letras de trás para frente.
Posso inverter as linhas de uma lista?
Sim, esse é o modo "Inverter ordem das linhas". A última linha vira a primeira e cada linha fica intocada. Linhas em branco são mantidas, então o espaçamento da lista sobrevive.
É seguro usar texto de cabeça para baixo em um nome de usuário ou na bio?
Visualmente funciona na maioria dos aparelhos modernos, mas é feito de caracteres substituídos, não de formatação. Leitores de tela anunciam esses caracteres literalmente, buscadores não vão encontrar o seu nome, e plataformas que normalizam a entrada podem rejeitar ou embaralhar o texto.
Texto invertido é um jeito de esconder algo?
Não. Ele é legível com um pouco de esforço e desfeito na hora por qualquer ferramenta, inclusive esta. Use para spoilers e brincadeiras, nunca para algo que precise continuar privado.
Última atualização 19 de setembro de 2026