Formateur JavaScript
Formatez du JavaScript et TypeScript avec Prettier, avec contrôle sur l'indentation, les points-virgules et le style de guillemets. Un vrai analyseur, donc les littéraux de template, expressions régulières et JSX sont gérés correctement.
- Les fichiers ne quittent jamais votre appareil
- Gratuit, sans inscription
- Aucun filigrane
- Fonctionne hors ligne une fois chargé
Comment utiliser Formateur JavaScript
- 1
Collez votre code
JavaScript, TypeScript ou JSX.
- 2
Définissez votre style
Indentation, points-virgules et préférence de guillemets.
- 3
Copiez le résultat
Formaté exactement comme le ferait Prettier dans votre éditeur.
Pourquoi formater du JavaScript nécessite réellement d'exécuter Prettier
Prettier n'est pas simplement l'inspiration pour la sortie de formatage de cet outil — c'est le paquet Prettier lui-même, téléchargé et exécuté dans votre navigateur plutôt que via Node sur un serveur, donc le résultat est identique octet par octet à ce que produirait exécuter `npx prettier` localement avec la même configuration. Cette distinction compte car le formatage JavaScript est réellement difficile à approximer : bien le faire nécessite d'analyser complètement le langage, pas de le faire correspondre à des motifs, et un formateur qui n'approxime que le comportement de Prettier divergera de la configuration Prettier réelle d'un projet exactement dans les cas limites où cela compte — dans un décorateur, un type générique complexe, ou une expression JSX inhabituelle.
Pourquoi les formateurs JavaScript naïfs se cassent sur du vrai code
JavaScript contient plusieurs constructions qui font échouer directement une approche simple de comptage d'accolades et de points-virgules. Les littéraux de template peuvent contenir du texte arbitraire entre accents graves, y compris des caractères ressemblant exactement à du code — `` `function() { return "not real code"; }` `` est une seule valeur de chaîne, pas trois instructions, et un formateur qui ne suit pas les limites des littéraux de template le méprendra. Les littéraux d'expression régulière sont pires : `/{}/` contient des caractères ressemblant à des accolades mais faisant partie du motif de l'expression régulière elle-même, pas de la syntaxe structurelle. L'insertion automatique de points-virgules ajoute une troisième couche de difficulté, car JavaScript permet d'omettre les points-virgules dans de nombreux contextes et déduit où une instruction se termine selon des règles qu'un formateur naïf basé sur les lignes n'a aucun moyen de reproduire correctement. Analyser réellement le langage en un arbre de syntaxe adéquat, comme le fait Prettier, est ce qui évite les trois modes d'échec — un formateur raccourci qui se trompe même sur un seul en code de production est un risque, pas une commodité.
Ce que Prettier ne fait délibérément pas
Prettier formate du code — standardise espaces blancs, sauts de ligne, style de guillemets et choix présentationnels similaires — et ne vérifie explicitement pas si le code est correct, sûr côté types, ou exempt d'erreurs. Un fichier avec une erreur de type, une référence à une variable indéfinie, ou une erreur logique se formate sans se plaindre tant qu'il est syntaxiquement valide, car formater et vérifier les types sont des préoccupations séparées gérées par des outils séparés. Le compilateur TypeScript lui-même, ou un linter comme ESLint, est là où la correction est vérifiée ; le travail de cet outil se termine en rendant le code au style cohérent et lisible.
Pourquoi les équipes se tournent vers un style partagé plutôt que d'en débattre
Tabulations contre espaces, guillemets simples contre doubles, points-virgules ou non — aucun de ces choix n'affecte significativement l'exécution du code, et les désaccords à leur sujet consommaient auparavant un vrai temps dans des discussions de revue de code qui n'avaient rien à voir avec la correction. La vraie proposition de valeur de Prettier est d'éliminer complètement ce débat de la table : un petit ensemble de règles de formatage avec parti pris appliquées automatiquement et identiquement partout signifie que le débat se résout une fois, dans la configuration, plutôt que répétitivement à chaque pull request par la suite.
Faire correspondre la configuration précise d'un projet
Chaque option exposée ici — largeur d'indentation, points-virgules, style de guillemets — reflète un vrai réglage de configuration Prettier, donc coller du code d'un projet avec un `.prettierrc` connu et faire correspondre ces mêmes réglages ici reproduit exactement ce que produirait l'outil du projet lui-même, sans avoir besoin d'installer quoi que ce soit localement juste pour vérifier comment un fragment serait formaté.
Questions fréquentes
Est-ce la même chose qu'exécuter Prettier localement ?
Oui — c'est Prettier lui-même, s'exécutant dans votre navigateur plutôt que dans Node. Avec les mêmes options vous obtenez une sortie identique octet par octet à `npx prettier` sur le même fichier.
Pourquoi ne pas utiliser un formateur plus simple ?
Parce que les formateurs naïfs cassent du vrai code. Les accolades dans les littéraux de template et expressions régulières, JSX, et l'insertion automatique de points-virgules nécessitent tous d'analyser réellement le langage. Un formateur qui corrompt silencieusement un fichier sur cinquante est pire qu'aucun.
Fonctionne-t-il avec TypeScript et JSX ?
Oui. Les annotations de type, génériques, décorateurs et JSX sont tous analysés. Notez qu'il formate seulement — il ne vérifie pas les types ni ne compile.
Pourquoi le formatage a-t-il échoué ?
Le code a une erreur de syntaxe — Prettier doit l'analyser avant de pouvoir l'imprimer. Le message inclut la ligne et colonne du premier problème, ce qui est généralement suffisant pour le trouver.
Mon code est-il envoyé à un serveur ?
Non. Prettier est téléchargé dans votre navigateur et s'y exécute. Le code propriétaire ne quitte jamais votre machine, ce qui n'est pas vrai pour la plupart des formateurs en ligne.
Tâches courantes pour Formateur JavaScript
Vous pourriez aussi avoir besoin de
Formateur JSON
Formatez, validez et minifiez du JSON instantanément
Formateur HTML
Embellissez et indentez du HTML correctement
Formateur CSS
Embellissez ou minifiez des feuilles de style
Encodeur et décodeur Base64
Encodez et décodez en Base64 et Base64URL
Minifieur CSS
Réduisez vos feuilles de style avec un vrai minifieur conscient du CSS
Générateur de hachage
MD5, SHA-1, SHA-256, SHA-384 et SHA-512
Minifieur JS
Réduisez du JavaScript avec une vraie minification, pas du regex
Décodeur JWT
Décodez et inspectez des JSON Web Tokens