Nouplo

Minifieur JavaScript

Plus petit — et démontrablement le même code.

Les exemples remplacent temporairement la saisie et les réglages. Vous pouvez rétablir votre travail précédent.

0 caractères
Résultat
Collez ou saisissez du texte ci-dessus pour voir le résultat ici.

Vos fichiers restent sur votre appareil

Cet outil fonctionne entièrement dans votre navigateur. Ce que vous collez est traité sur votre appareil et n’est jamais envoyé à un serveur : vous pouvez l’utiliser sans crainte avec des jetons, des clés et des textes non publiés.

Exemple

Exemple : le script de devis d’un atelier vélo, de 679 à 472 caractères

L’Atelier Vélo des Tilleuls calcule ses devis en ligne : prix hors taxes × quantité, TVA à 20 %, total TTC en euros et un bandeau de remise au-delà de 150 €. 25 lignes, 679 caractères, trois commentaires. Réglage : Minifier.

  1. Les chiffres : avant 679, après 472, économisé 30 %. Les 25 lignes deviennent 5 et les trois commentaires disparaissent.
  2. Le } qui ferme le if est suivi d’un else à la ligne : rien ne prouve que ce saut de ligne peut partir, donc il reste. Le code est juste, simplement un peu moins court.
  3. La chaîne 'Total TTC : ' est recopiée telle quelle, et Math.round(ht * (1 + TVA) * 100) / 100 garde sa division.
  4. Les deux versions donnent le même devis : chaîne 11 vitesses 32,50 € HT, soit 39 € TTC, deux heures de main-d’œuvre à 45 € HT, soit 108 € TTC, total 147,00 €, donc pas de remise.
Élément Avant Après
TTC const ttc = Math.round(ht * (1 + TVA) * 100) / 100;const ttc=Math.round(ht*(1+TVA)*100)/100;
Format new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR' })new Intl.NumberFormat('fr-FR',{style:'currency',currency:'EUR'})
if / else } puis else { à la ligne suivante} puis else{, saut de ligne gardé
Fichier 25 lignes, 679 caractères5 lignes, 472 caractères (30 % économisés)

ligneDevis, afficher et l’id 'remise' gardent leur nom : la page qui appelle afficher() fonctionne sans retouche, il suffit de remplacer le fichier par la version de 472 caractères.

Comment ça marche

  1. Collez le JavaScript.
  2. Les commentaires et l’indentation disparaissent ; les noms restent exactement ce qu’ils étaient.
  3. Vérifiez le gain dans les chiffres au-dessus de la sortie.
  4. Copiez ou téléchargez le résultat.

Questions fréquentes

Pourquoi ne raccourcit-il pas mes noms de variables ?
Parce que renommer demande un vrai analyseur et une étude des portées, et se tromper subtilement là-dessus livre un fichier qui marche jusqu’à ce qu’il ne marche plus. Pour quelque chose que vous êtes sur le point de publier, un outil qui promet moins et a toujours raison est le meilleur marché.
Distingue-t-il une expression régulière d’une division ?
Oui — c’est la seule partie réellement difficile de la lecture de JavaScript sans analyse syntaxique. Une barre oblique après une valeur ou une parenthèse fermante est une division ; après un opérateur, une parenthèse ouvrante, une virgule, un mot comme return ou typeof, ou au début, elle ouvre une expression régulière. Ainsi x = /ab+c/g et return /a b/.test(s) restent entiers, espaces compris, et total/count reste une division.
Casse-t-il l’insertion automatique des points-virgules ?
Non. Un saut de ligne peut tenir lieu de point-virgule, donc deux lignes ne sont réunies que si la première finit par un opérateur, une virgule ou une parenthèse ouvrante, ou si la seconde commence par une fermante, un point ou une virgule. Une ligne qui finit par ++ ou -- ou par une expression régulière garde son saut de ligne : le code écrit sans points-virgules fonctionne lui aussi.
Mon en-tête de licence est-il supprimé ?
Non. Un bloc commençant par /*! et tout commentaire contenant @license ou @preserve sont conservés tels quels, sauts de ligne compris, sur une ligne à part. Les autres // et /* */ partent, blocs JSDoc /** compris.
Le gain est-il compté en octets ?
En caractères : avant et après sont la longueur du texte telle que JavaScript la compte. Pour du code sans accents, c’est le nombre d’octets ; un é ou un ç prend deux octets en UTF-8, donc un fichier aux commentaires en français gagne un peu plus en octets que le pourcentage affiché.
Quelque chose part-il vers un serveur ?
Non. Tout tourne dans le navigateur : ce que vous collez reste sur votre ordinateur.

Outils associés