{"id":462,"date":"2026-10-03T19:17:06","date_gmt":"2026-10-03T18:17:06","guid":{"rendered":"https:\/\/wpcalc.com\/pt\/comprimir-javascript\/"},"modified":"2026-10-03T19:17:06","modified_gmt":"2026-10-03T18:17:06","slug":"comprimir-javascript","status":"publish","type":"post","link":"https:\/\/wpcalc.com\/pt\/ferramentas-web\/comprimir-javascript\/","title":{"rendered":"Comprimir JavaScript"},"content":{"rendered":"<section class=\"not-prose calculator-box\" aria-labelledby=\"calculator-title\"><div class=\"flex items-baseline sm:items-center justify-between gap-2 sm:gap-3\"><div class=\"flex flex-col sm:flex-row sm:items-center gap-2\"><span class=\"icon icon-calculator text-primary-700! text-base! dark:text-primary-300!\" aria-hidden=\"true\"><\/span><h2 id=\"calculator-title\" class=\"text-lg font-display font-bold\">Ferramenta de Minifica\u00e7\u00e3o de JavaScript<\/h2><\/div><div class=\"calcdash-favorite group\">\n  <button type=\"button\" class=\"favorite\" id=\"favorite\" data-favorite-id=\"462\" data-favorite-title=\"Comprimir JavaScript\" data-favorite-url=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/comprimir-javascript\/\" data-favorite-excerpt=\"Cole o JavaScript no campo para remover caracteres desnecess\u00e1rios. Copie o c\u00f3digo comprimido e compare os tamanhos exibidos antes e depois.\" aria-label=\"Adicionar aos favoritos\" data-favorite-icon=\"icon icon-conversion\">\n    <span class=\"icon icon-shape-star-empty\" aria-hidden=\"true\"><\/span>\n  <\/button>\n  <div class=\"calcdash-favorite__tip\" aria-hidden=\"true\">\n   <span class=\"favorite-tooltip\" id=\"favorite-tooltip\"><\/span>\n  <\/div>\n  <span class=\"sr-only\" role=\"status\" id=\"favorite-status\"><\/span>\n<\/div><\/div><form action=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/comprimir-javascript\/\" method=\"POST\" class=\"calculator\" id=\"calculator-462\" data-post=\"462\"><fieldset class=\"fieldset-input is-1\"><legend class=\"sr-only\">Campos de entrada<\/legend><div class=\"field is-single\" id=\"input-1\"><label for=\"field-1\">C\u00f3digo JavaScript a compactar<\/label><textarea id=\"field-1\" name=\"cdigo_javascript_a_compactar\">function test() {\n  console.log(&quot;hello&quot;);\n}<\/textarea><\/div><\/fieldset><div class=\"buttons\"><button type=\"submit\" data-text=\"Recalcular\" id=\"calculate-button\" data-post=\"462\">Calcular<\/button><button type=\"reset\">Redefinir<\/button><\/div><div class=\"field is-checkbox hidden!\" id=\"field-auto-calc\"><input type=\"checkbox\" id=\"auto-calc\"><label for=\"auto-calc\">Calcular automaticamente<\/label><small>Se ativado, o resultado \u00e9 atualizado automaticamente quando voc\u00ea altera qualquer valor.<\/small><\/div><div class=\"fieldset-result is-hidden\" aria-labelledby=\"result-title\" aria-live=\"polite\" role=\"region\"> <h3 class=\"result-title bg-gradient-to-r from-primary-50 to-gray-50 dark:from-primary-900 dark:to-gray-800\" id=\"result-title\"><span class=\"icon icon-s-pulse\" aria-hidden=\"true\"><\/span> Seus resultados<\/h3><div class=\"result-box\"><div class=\"field-result is-column\" id=\"output-1\"><span class=\"field-title\"><span>C\u00f3digo compactado<\/span><\/span><span class=\"field-value\" id=\"result-1\"><\/span><button type=\"button\" class=\"copy-result\" data-tooltip=\"Copiar resultado\" aria-label=\"Copiar resultado\"><span class=\"copy-icon icon icon-document-copy\" aria-hidden=\"true\"><\/span><\/button><\/div><div class=\"field-result is-column\" id=\"output-2\"><span class=\"field-value\" id=\"result-2\"><\/span><button type=\"button\" class=\"copy-result\" data-tooltip=\"Copiar resultado\" aria-label=\"Copiar resultado\"><span class=\"copy-icon icon icon-document-copy\" aria-hidden=\"true\"><\/span><\/button><\/div><\/div><div class=\"result-actions\"><button type=\"button\" class=\"copy-link\"><svg viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z\"\/><path d=\"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z\"\/><\/svg><span class=\"copy-link__text\">Copiar link para este c\u00e1lculo<\/span><\/button><span class=\"sr-only\" role=\"status\" id=\"copy-link-status\"><\/span><\/div><\/div><a href=\"#respond\" class=\"hidden transition-opacity duration-300 opacity-0 w-50 text-sm justify-center items-center gap-2 px-4 py-2 rounded bg-gray-200 text-gray-700 hover:bg-gray-300\" id=\"leave-comment\"><span class=\"icon icon-comments\" aria-hidden=\"true\"><\/span>Deixar um coment\u00e1rio<\/a><\/form><\/section><section id=\"calc-reactions\" class=\"not-prose hidden my-12 bg-gradient-to-r from-primary-50 to-gray-50 border border-indigo-100 rounded-xl px-6 py-4 shadow-sm\" data-post=\"462\" aria-live=\"polite\" aria-labelledby=\"calc-reactions-title\"><p id=\"calc-reactions-title\" class=\"text-sm text-gray-500 text-center mb-2\">O que voc\u00ea achou deste resultado?<\/p><div role=\"group\" aria-labelledby=\"calc-reactions-title\" class=\"grid grid-cols-3 sm:flex sm:flex-row sm:justify-around gap-4 sm:items-center sm:flex-wrap\"><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"like\"><span class=\"reaction-count\" data-reaction-count=\"like\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude00 <\/span><span class=\"reaction-description font-medium\">Curti <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"helpful\"><span class=\"reaction-count\" data-reaction-count=\"helpful\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\udca1 <\/span><span class=\"reaction-description font-medium\">\u00datil <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"confused\"><span class=\"reaction-count\" data-reaction-count=\"confused\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude15 <\/span><span class=\"reaction-description font-medium\">Confuso <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"disappointed\"><span class=\"reaction-count\" data-reaction-count=\"disappointed\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude1e <\/span><span class=\"reaction-description font-medium\">Decepcionado <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"inaccurate\"><span class=\"reaction-count\" data-reaction-count=\"inaccurate\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\u274c <\/span><span class=\"reaction-description font-medium\">Impreciso <\/span><\/button><\/div><div id=\"reaction-message\" class=\"hidden mt-8 rounded-md border border-primary-100 bg-white\/50 backdrop-blur-sm px-4 py-2 text-sm text-center shadow-sm\"><\/div><\/section><div class=\"calcdash-ad not-prose calcdash-ad--calc_result calcdash-ad--in-article\"><ins class=\"adsbygoogle\" style=\"display:block\" data-ad-client=\"ca-pub-1721569815777345\" data-ad-slot=\"6317458308\" data-ad-layout=\"in-article\" data-ad-format=\"fluid\"><\/ins><script>(adsbygoogle = window.adsbygoogle || []).push({});<\/script><\/div>\n<style id=\"wpcoderpro-inline-1\">.formula-box {\r\n\tborder-bottom: none !important;\r\n}<\/style><section class=\"formula-box\" aria-labelledby=\"formula-title\">\r\n\t<div id=\"formula-title\" class=\"not-prose font-display mb-4\"><span class=\"icon icon-formula\" aria-hidden=\"true\"><\/span><h2>F\u00f3rmula de Compress\u00e3o de JavaScript<\/h2><\/div>\r\n\t<figure class=\"not-prose formula\">\r\n\t\t<figcaption class=\"formula-title\">F\u00f3rmula<\/figcaption>\r\n\t\t<div class=\"text-base text-gray-800\" id=\"formula\">\n\\[d=\\begin{cases}L_{\\mathrm{in}}+N_{\\mathrm{LF}},&amp;\\text{se a entrada n\u00e3o tiver retornos de carro}\\\\L_{\\mathrm{in}},&amp;\\text{caso contr\u00e1rio}\\end{cases}\\qquad R=\\frac{\\operatorname{round}\\!\\left(1000\\frac{d-L_{\\mathrm{out}}}{d}\\right)}{10}\\%\\]\n<\/div>\r\n\t<\/figure>\r\n\t<\/p>\n<p><strong>Onde:<\/strong><\/p>\n<ul>\n<li>\\(L_{\\mathrm{in}}\\) \u2014 o comprimento da cadeia de entrada, tal como medido pelo JavaScript.<\/li>\n<li>\\(N_{\\mathrm{LF}}\\) \u2014 o n\u00famero de caracteres de quebra de linha na entrada.<\/li>\n<li>\\(L_{\\mathrm{out}}\\) \u2014 o comprimento da cadeia do c\u00f3digo comprimido.<\/li>\n<li>\\(d\\) \u2014 o valor exibido como \u201cAntes\u201d; \\(R\\) \u2014 a taxa de compress\u00e3o exibida.<\/li>\n<\/ul>\n<p>A ferramenta comprime a entrada com um empacotador de JavaScript e depois compara o comprimento do resultado com o comprimento ajustado da entrada. Uma taxa positiva significa que a sa\u00edda \u00e9 mais curta segundo essa medida.<\/p>\n<p>\r\n<\/section>\n<style id=\"wpcoderpro-inline-2\">.calculation-box {\r\n\tborder-bottom: none !important;\r\n}<\/style><section id=\"calculation\" class=\"calculation-box\" aria-labelledby=\"calculation-title\">\r\n\t<div id=\"calculation-title\" class=\"not-prose font-display\"><span class=\"icon icon-unordered-list\" aria-hidden=\"true\"><\/span><h2>Compress\u00e3o de JavaScript \u2013 Exemplo de C\u00e1lculo<\/h2><\/div>\r\n\r\n<\/p>\n<p><strong>Exemplo:<\/strong> use a fun\u00e7\u00e3o padr\u00e3o, que regista \u201chello\u201d. A sua fonte tem 43 caracteres, incluindo duas quebras de linha. O resultado comprimido \u00e9 <code>function test(){console.log(\"hello\")}<\/code>, com um comprimento de 37 caracteres.<\/p>\n<p>\\[d=43+2=45\\qquad R=\\frac{\\operatorname{round}\\!\\left(1000\\frac{45-37}{45}\\right)}{10}\\%=17.8\\%\\]<\/p>\n<p><strong>Resultado:<\/strong> Antes: 45B; Depois: 37B; Taxa de compress\u00e3o: 17,8%. O valor \u201cAntes\u201d \u00e9 maior do que o comprimento de 43 caracteres da cadeia de origem porque esta ferramenta acrescenta uma contagem por cada quebra de linha quando a entrada n\u00e3o tem retornos de carro.<\/p>\n<p>\n\r\n<\/section>\n<h2>Como usar a calculadora<\/h2>\n<ol>\n<li>Cole ou escreva a sua fonte em <strong>C\u00f3digo JavaScript a Comprimir<\/strong>. O campo come\u00e7a com uma pequena fun\u00e7\u00e3o de exemplo que pode substituir.<\/li>\n<li>Execute a calculadora para gerar o <strong>C\u00f3digo Comprimido<\/strong>. Um campo vazio produz uma mensagem \u201cIntroduza o c\u00f3digo\u201d em vez de um resultado.<\/li>\n<li>Reveja a sa\u00edda e os valores de <strong>Antes<\/strong>, <strong>Depois<\/strong> e <strong>Taxa de compress\u00e3o<\/strong>. Use o controlo de c\u00f3pia para levar o c\u00f3digo comprimido para o seu projeto.<\/li>\n<li>Teste o c\u00f3digo copiado no ambiente pretendido antes de o implementar.<\/li>\n<\/ol>\n<h2>O que significa compress\u00e3o de JavaScript aqui<\/h2>\n<p>Esta ferramenta torna a fonte JavaScript mais compacta ao pass\u00e1-la por um empacotador com as op\u00e7\u00f5es de codifica\u00e7\u00e3o adicional e encolhimento de vari\u00e1veis desativadas. O objetivo \u00e9 remover caracteres desnecess\u00e1rios \u00e0 sintaxe do c\u00f3digo, como coment\u00e1rios eleg\u00edveis e espa\u00e7os em branco. O resultado costuma ser mais dif\u00edcil de ler do que o original, por isso guarde uma c\u00f3pia edit\u00e1vel da sua fonte.<\/p>\n<p>Uma fonte mais pequena pode reduzir a quantidade de JavaScript transferida para um navegador, mas a taxa exibida n\u00e3o \u00e9 uma previs\u00e3o da melhoria no carregamento da p\u00e1gina. Os servidores podem aplicar gzip ou Brotli, o que pode alterar a diferen\u00e7a nos bytes transferidos. O tempo de descarregamento tamb\u00e9m depende da cache, das condi\u00e7\u00f5es de rede e do resto da p\u00e1gina. Para um olhar mais atento ao comprimento de ficheiros ou de texto, compare o resultado com a calculadora <a href=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/tamanho-do-texto\/\">Tamanho de Texto<\/a>.<\/p>\n<p>A minifica\u00e7\u00e3o \u00e9 diferente da ofusca\u00e7\u00e3o. O c\u00f3digo compacto continua a ser fonte JavaScript e pode ser relativamente f\u00e1cil de inspecionar. Se estiver a comparar estas abordagens, o <a href=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/ofuscador-javascript-eval\/\">Ofuscador de JavaScript (eval)<\/a> produz um tipo diferente de sa\u00edda; a ferramenta <a href=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/descodificar-javascript-eval\/\">Descodificador Eval de JavaScript<\/a> destina-se a examinar c\u00f3digo empacotado com eval, e n\u00e3o a reverter a minifica\u00e7\u00e3o comum.<\/p>\n<h2>Pressupostos e limita\u00e7\u00f5es pr\u00e1ticas<\/h2>\n<p>As etiquetas de tamanho dizem \u201cB\u201d, mas o c\u00e1lculo usa comprimentos de cadeias JavaScript, e n\u00e3o o n\u00famero de bytes de um ficheiro UTF-8 guardado. O JavaScript conta unidades de c\u00f3digo UTF-16, pelo que caracteres n\u00e3o ASCII podem fazer com que os valores reportados difiram dos tamanhos reais dos ficheiros. A ferramenta tamb\u00e9m acrescenta uma contagem por quebra de linha ao comprimento da entrada quando n\u00e3o h\u00e1 retornos de carro. Esse ajuste afeta a taxa reportada; n\u00e3o acrescenta caracteres ao c\u00f3digo comprimido.<\/p>\n<p>A compress\u00e3o pode pouvar muito pouco em c\u00f3digo que j\u00e1 \u00e9 compacto, e \u00e9 poss\u00edvel obter uma taxa negativa se a sa\u00edda for mais longa segundo a medi\u00e7\u00e3o da ferramenta. N\u00e3o trate uma taxa positiva como prova de que o comportamento ficou inalterado. A sintaxe do JavaScript pode ser sens\u00edvel a quebras de linha e a certos coment\u00e1rios, e os empacotadores mais antigos podem n\u00e3o suportar todas as funcionalidades modernas da linguagem. Teste o resultado, especialmente quando o seu c\u00f3digo usa sintaxe recente ou depende de a conserva\u00e7\u00e3o de coment\u00e1rios.<\/p>\n<p>Para trabalho de produ\u00e7\u00e3o, conserve a fonte leg\u00edvel e valide a vers\u00e3o comprimida com os seus testes e navegadores-alvo habituais. Compare os tamanhos reais dos ficheiros servidos se o tamanho de transfer\u00eancia for importante. Se precisar de verificar separadamente a contagem de caracteres de uma cadeia de origem, use o <a href=\"https:\/\/wpcalc.com\/pt\/ferramentas-web\/contador-de-caracteres\/\">Contador de Caracteres<\/a>; a sua contagem n\u00e3o precisa de coincidir com o valor \u201cAntes\u201d ajustado desta ferramenta.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cole o JavaScript no campo para remover caracteres desnecess\u00e1rios. Copie o c\u00f3digo comprimido e compare os tamanhos exibidos antes e depois.<\/p>\n","protected":false},"author":3168,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[15],"tags":[28],"class_list":["post-462","post","type-post","status-publish","format-standard","hentry","category-ferramentas-web","tag-ferramentas-de-conversao"],"acf":[],"_links":{"self":[{"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/posts\/462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/users\/3168"}],"replies":[{"embeddable":true,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/comments?post=462"}],"version-history":[{"count":2,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/posts\/462\/revisions"}],"predecessor-version":[{"id":1737,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/posts\/462\/revisions\/1737"}],"wp:attachment":[{"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/media?parent=462"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/categories?post=462"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpcalc.com\/pt\/wp-json\/wp\/v2\/tags?post=462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}