Minificateur JavaScript
Collez du JavaScript pour le réduire avec Terser : le code mort est supprimé, les noms sont raccourcis et les espaces disparaissent. Les erreurs de syntaxe indiquent la ligne et la colonne exactes.
Fonctionne dans le navigateurSans inscriptionAucun envoi de données
Comment utiliser : Minificateur JavaScript
- Collez votre JavaScript ou ouvrez un fichier
.js. - Choisissez les options : Raccourcir les noms renomme les variables locales, Compresser réécrit le code en un équivalent plus court, Module ES autorise les
import/exportau niveau racine. - Choisissez la cible ECMAScript prise en charge par les navigateurs de vos utilisateurs. ES2020 est sûr pour tous les navigateurs evergreen.
- Consultez la taille, le gain et l’estimation gzip sous le résultat.
- Copiez le code minifié ou téléchargez-le sous le nom
output.min.js.
Que fait un minificateur JavaScript ?
La minification rend le JavaScript plus léger sans changer son comportement. Cet outil utilise Terser, le minificateur utilisé par webpack, Vite et Rollup, et applique trois types de modifications :
- Suppression des espaces et commentaires : l’indentation, les sauts de ligne et les commentaires sont inutiles au moteur JavaScript.
- Mangling : les noms de variables locales et de paramètres de fonctions comme
subtotaldeviennent des lettres uniques. Les noms globaux et les propriétés d’objets ne sont pas touchés, pour que votre API publique continue de fonctionner. - Compression : les expressions constantes sont précalculées, le code inaccessible est supprimé, les instructions
ifdeviennent des ternaires et les fonctions courtes sont inlinées.
Minification ou gzip : faut-il les deux ?
Oui. Gzip et Brotli compressent les motifs d’octets répétés pendant le transfert, tandis que la minification supprime des octets que le navigateur devrait sinon télécharger, analyser et compiler. Un script typique perd 40 à 60 % grâce à la minification, puis encore 60 à 70 % grâce à gzip. La taille gzip affichée ici donne une bonne estimation de ce que votre serveur enverra réellement.
Conserver les commentaires de licence
De nombreuses licences open source (MIT, BSD, Apache) exigent que la mention de copyright accompagne le code. Par convention, les commentaires qui commencent par /*! ou contiennent @license ou @preserve sont conservés lorsque Conserver les commentaires de licence est activé.
Quand ne pas minifier à la main
Si votre projet utilise déjà un bundler, laissez-le minifier les builds de production et générer des source maps pour le débogage. Un minificateur en ligne est idéal pour les scripts ponctuels, les snippets pour un CMS ou un tag manager, les bookmarklets, ou pour voir jusqu’où un bout de code peut être réduit.
Questions fréquentes
Mon code est-il envoyé sur un serveur ?
La minification peut-elle casser mon code ?
Function.prototype.toString() ou des noms de variables locales via eval peut être affecté ; désactivez alors Raccourcir les noms.