Initializing, please wait a moment

Unminify JS: Restaurar a Legibilidade de JavaScript Minificado

JavaScript minificado colapsa um bundle em uma linha densa com nomes de variável de uma letra. Cole no desminificador JS online e a ferramenta re-insere espaço em branco, quebras de linha e indentação em segundos - sem upload, sem instalação, nada enviado para um servidor.

PropriedadeValor
FormatoFerramenta online, sem instalar
VelocidadeNo navegador; saída legível em segundos
PrivacidadeCódigo-fonte fica no dispositivo; nada sobe
Renomear variávelNão realizado - nomes de uma letra continuam de uma letra
Ferramenta implementadorahttps://freetoolonline.com/developer-tools/js-unminifier.html

O que o unminify de fato faz (e o que não consegue fazer)

O que o unminify de fato faz é reinserir espaços, quebras e indentação no JavaScript minificado para ler um bundle de uma linha - não recupera nomes de identificadores encurtados no minify.

Passo a passo de três minutos

Passo a passo de três minutos: cole JS minificado no JS Unminifier, rode o beautify e copie a saída indentada - no navegador, sem upload do código para um servidor de conversão.

  1. Copie o bundle minificado. Abra o arquivo .min.js no seu editor ou na aba network do navegador (Response body), selecione tudo, copie.
  2. Cole no editor. Abra https://freetoolonline.com/developer-tools/js-unminifier.html e cole no painel de entrada. Bundles longos - centenas de KB ou mais - funcionam, mas espere a passada de formatação levar um ou dois segundos enquanto o parser caminha pela AST.
  3. Clique em Unminify. O painel da direita mostra a saída indentada. Copie o resultado de volta para seu editor ou salve como arquivo .js local para leitura estilo grep.

Onde a saída desminificada ajuda e onde não ajuda

Ler código de terceiros desminificado é útil em três situações concretas. Primeiro, triagem de vulnerabilidade - quando um CVE nomeia uma função dentro de um bundle de fornecedor, o unminify deixa você localizar os pontos de chamada e ler o fluxo ao redor sem precisar montar o repo original. Segundo, confirmação de comportamento - quando o comportamento de uma biblioteca muda entre versões, comparar as versões desminificadas mostra a diferença muito mais rápido do que ler a forma densa de uma linha. Terceiro, verificação de saída de build - quando seu próprio pipeline gera um bundle que misteriosamente carrega um polyfill duas vezes, a forma desminificada mostra os blocos IIFE duplicados num relance. Unminify não ajudará quando o objetivo for os nomes semânticos originais; para isso, entregue o source map junto com o bundle e carregue-o no seu debugger.

O que é preservado, o que é perdido

O que é preservado, o que é perdido: espaços e indentação voltam da árvore de parse; comentários e nomes curtos como a/b/fn1 não voltam.

Indo no sentido contrário?

Se você chegou aqui buscando encolher JS para produção em vez de expandi-lo, a ferramenta companheira em https://freetoolonline.com/developer-tools/js-minifier.html faz a direção direta (remoção de espaço em branco, encurtamento de identificador) e o guia de comparação CSS Minifier vs Uglifier vs Tree-Shaking cobre como as três transformações se empilham em um pipeline de build típico. Para equivalentes do lado CSS, veja CSS Unminifier vs Prettier: Quando Usar Cada - a decisão do lado JS é similar: unminify ao ler saída de terceiros, source map ao depurar a sua própria.

Perguntas frequentes

O unminify recupera os nomes originais das variáveis?

Não. Minificadores substituem identificadores por nomes sintéticos curtos em tempo de build e descartam os originais; a saída desminificada mantém os nomes sintéticos. Carregue o source map correspondente no debugger do seu navegador para ver os símbolos originais.

O código-fonte é enviado para algum lugar?

Não. A passada de unminify roda inteiramente no seu navegador; o texto minificado nunca é enviado a um servidor. Feche a aba e a entrada se vai.

O unminify vai quebrar o JavaScript?

Não. A transformação é puramente cosmética - espaço em branco, quebras de linha e indentação. A AST não muda, então o código desminificado roda identicamente ao minificado original. Passe por um verificador de sintaxe se quiser uma confirmação com cinto e suspensório.

Qual é o limite de tamanho do arquivo?

Bundles de até vários megabytes funcionam em navegadores modernos; o tempo da passada de formatação cresce aproximadamente linear com o comprimento da entrada. Bundles muito grandes (10 MB+) podem travar a aba; nesse caso, divida o bundle por limite de closure e desminifique cada chunk separadamente.

Qual a diferença entre unminify e prettier?

Unminify restaura formatação legível para código que foi deliberadamente compactado. Prettier (ou um formatador similar) impõe um guia de estilo escolhido sobre código já legível. Para um bundle de terceiros minificado, unminify primeiro; se você então quiser uma largura de indent ou estilo de aspas específico, rode o prettier sobre a saída.

Quando o seu objetivo é produzir JS menor em vez de lê-lo, o guia how to minify css js for cloud run cold start cobre os passos do pipeline de build para remover CSS e JS antes da implantação em container.

Como ficam os nomes de identificadores após desminificar

Desminificar restaura espaços em branco e estrutura, não recupera nomes de identificadores originais. Os nomes de variáveis locais encurtados (letras únicas como a, b, fn1) permanecem encurtados. Os nomes exportados geralmente são preservados porque os minificadores ignoram o encurtamento de símbolos exportados para que a API do módulo permaneça intacta. Para reduzir JS, use o JS minifier - remove espaços em branco, comentários e encurta variáveis locais preservando os nomes exportados.

Why trust these tools

  • Ten-plus years of web tooling. The freetoolonline editorial team has shipped browser-based utilities since 2015. The goal has never changed: get you to a working output fast, without an install.
  • No install, no sign-up. Open a tool and get a working output in seconds - nothing to download and no account to create. Tools that need heavy processing run it on our service, so even a low-powered machine gets the job done.
  • Analytics stops at the page view. We measure which pages get visited, not what you type or upload inside a tool. There is nothing to sign in to and no profile is attached to your input.
  • Open-source core components. The processing engines underneath (libheif, libde265, pdf-lib, terser, clean-css, ffmpeg.wasm, and others) are public and audit-able. We link to each one in its tool page's footer.
  • Free, with or without ads. All tools are fully functional without sign-up. The Disable Ads button in the header is always available if you need a distraction-free run.

Related tools:

  • MD5 converter - Text to MD5 + MD5 to text cached lookup.
  • Convert PDF to TEXT online - Extract text from PDF online for copying and editing.
  • Text To HTML Editor - Text to HTML editor online - write in a WYSIWYG view and watch the generated HTML update live, with
  • CSS Gradient Animator Generator - CSS gradient generator - build animated linear gradients with live preview; copy ready-to-paste CSS
  • CSS Minifier - Minify CSS online for faster page loads.
  • CSS UnMinifier - CSS unminifier online - beautify minified CSS with proper indentation, line breaks, and readable
  • JavaScript Minifier - JavaScript minifier online free - paste your JS, click Minify, and copy the compressed code.
  • JSON Parser By Tree View - Paste JSON to validate, format, and view it in a tree.
  • JavaScript UnMinifier - JavaScript unminifier online - reformat minified JS with indentation and line breaks for
  • Keyboard Test - Quick keyboard check before a meeting or new purchase.
  • Text Diff - Text diff online - compare two text blocks and highlight added, removed, and changed characters,
  • Developer Tools - Developer tools to parse JSON, minify or unminify CSS/JS, compare text, and generate MD5 hashes.

Tags: #guide, #developer, #javascript, #unminifier, #beautifier

Related guides: