🍋
Menu
Web

Minification

Minification (Réduction de la taille du code)

Le processus de suppression de tous les caractères superflus du code source (espaces, sauts de ligne, commentaires, noms de variables longs) pour réduire la taille du fichier sans modifier sa fonctionnalité.

Détail technique

Les minificateurs JavaScript (Terser, esbuild, SWC) effectuent la tokenisation, l'analyse AST, le raccourcissement des noms de variables (mangling), l'élimination du code mort (tree-shaking), l'inlining de constantes et la suppression des espaces/commentaires. La minification CSS (cssnano, Lightning CSS) supprime les espaces, fusionne les sélecteurs, raccourcit les valeurs de couleur (#ffffff → #fff), supprime les préfixes vendeurs inutiles et optimise les raccourcis. Les économies typiques sont de 30 à 70 % en taille de fichier. Les source maps (.map) permettent de déboguer le code minifié en reliant au code original.

Exemple

```javascript
// Simple CSS minifier
function minifyCSS(css) {
  return css
    .replace(/\/\*[\s\S]*?\*\//g, '')  // remove comments
    .replace(/\s+/g, ' ')                // collapse whitespace
    .replace(/\s*([{};:,])\s*/g, '$1')   // remove around symbols
    .trim();
}
// 1024 bytes → 612 bytes (40% reduction)
```

Outils associés

Termes associés