Enleveur de type TypeScript
Guide
Enleveur de type TypeScript
Le TypeScript Type Stripper transforme le code source TypeScript en JavaScript propre et exécutable en supprimant chaque constructeur de compilation que la langue ajoute au-dessus de l'ECMAScript. Les annotations de type, les déclarations d'interface, les alias de type, les paramètres génériques, les enums, les décorateurs et les affirmations non-nulles sont supprimés dans une seule passe déterministe, tout en préservant exactement la logique en temps d'exécution de votre programme.
L'outil fonctionne entièrement dans votre navigateur en utilisant l'API officielle du compilateur TypeScript, de sorte que votre code source ne quitte jamais votre machine. La sortie est identique à ce que produirait tsc pour la même entrée, ce qui rend le strippeur sécurisé pour porter des bibliothèques, partager des fragments en JavaScript pur, déboguer le comportement post-transpilation, et migrer hors TypeScript lorsque le projet n'a plus besoin de ce langage.
Comment utiliser
- Collez votre code source TypeScript dans la zone d'entrée, ou faites glisser un
.tsou.tsxfichier sur le chargeur. - Choisissez un mode de sortie : Types de strip uniquement préserve la syntaxe moderne, tandis que les cibles ES2020, ES2017 et ES5 suppriment de plus en plus les fonctionnalités de langage récentes.
- Choisissez une option de gestion du JSX si votre code contient des expressions JSX, puis activez la préservation des commentaires JSDoc, la suppression des imports de type uniquement et la suppression des commentaires selon vos préférences.
- Le JavaScript pur apparaît dans le panneau de sortie dès que le compilateur est terminé. Utilisez le bouton copier ou télécharger pour obtenir le résultat.
Caractéristiques
- Transformation déterministe de l'AST – Conçu sur l'API officielle de TypeScript, la sortie est reproduisible à l'identique au niveau des octets.
- Strip-only ou downlevel – Choisissez entre suppression pure des types ou transpilation complète vers ES2020, ES2017 ou ES5.
- Couverture complète du langage – Gère correctement les interfaces, les alias de type, les génériques, les enums, les décorateurs, les propriétés de paramètres et les affirmations non-nulles.
- Conscient du JSX – Préservé
.jsxsortie ou converti enReact.createElementappels. - Contrôle des commentaires – Gardez les blocs JSDoc, les supprimez ou supprimez tous les commentaires pour les builds de production.
- Nettoyage des imports de type uniquement – Supprime les
import typeinstructions qui ne font plus référence à quoi que ce soit en temps d'exécution. - Privilégier la confidentialité – Tout se déroule dans votre navigateur ; aucun code n'est envoyé sur un serveur.
- Reporting de la taille – Voir combien d'octets le résultat éliminé par rapport à l'original.
FAQ
-
Qu'est-ce que TypeScript et comment diffère-t-il de JavaScript ?
TypeScript est un surensemble strict de JavaScript qui ajoute des annotations de type, des interfaces, des enums, des génériques et d'autres constructeurs en temps de compilation. Le compilateur TypeScript (tsc) analyse ces constructeurs en un arbre syntaxique abstrait (AST) puis émet du JavaScript conforme aux normes en éliminant la couche de type. Puisque les types existent uniquement en temps de compilation, le comportement en temps d'exécution d'un TypeScript bien typé est identique au JavaScript qu'il génère.
-
Pourquoi l'élimination des types est-elle une transformation déterministe ?
L'élimination des types est déterministe car elle s'applique à un arbre syntaxique analysé plutôt qu'au texte brut. Chaque nœud de l'arbre porte un type explicite, et le compilateur supprime les nœuds de type uniquement (comme TypeAnnotation, InterfaceDeclaration et TypeAliasDeclaration) sans toucher les expressions produisant des valeurs adjacentes. Le JavaScript résultant est donc garanti de préserver les sémantiques chaque fois que le code source est syntaxiquement valide.
-
Qu'est-ce que les cibles de downlevel ECMAScript et pourquoi sont-elles importantes ?
Les éditions ECMAScript (ES2017, ES2020, ES2022, etc.) définissent les fonctionnalités natives que les navigateurs et les environnements d'exécution implémentent. Une cible de downlevel indique au compilateur de réécrire les fonctionnalités plus récentes (chaînage optionnel, async/await, champs de classe) en code équivalent que les cibles plus anciennes peuvent exécuter. Le choix d'une cible plus basse augmente la compatibilité au détriment de la taille de sortie et des fonctions d'aide émises.
-
Comment les fichiers de déclaration et le code en temps d'exécution diffèrent-ils ?
Un fichier de déclaration (.d.ts) contient uniquement des informations de type ambiant : interfaces, alias de type, signatures de fonction et formes de module. Il ne produit aucun code en temps d'exécution lors de la compilation. Les fichiers d'implémentation (.ts) combinent des déclarations de type avec des expressions en temps d'exécution. Lors de la transpilation, tout contenu .d.ts disparaît et uniquement une partie exécutable des fichiers .ts est émise en JavaScript.
Installez nos extensions
Ajoutez des outils IO à votre navigateur préféré pour un accès instantané et une recherche plus rapide
恵 Le Tableau de Bord Est Arrivé !
Tableau de Bord est une façon amusante de suivre vos jeux, toutes les données sont stockées dans votre navigateur. D'autres fonctionnalités arrivent bientôt !
Outils essentiels
Tout voir Nouveautés
Tout voirMise à jour: Notre dernier outil a été ajouté le 20 juin 2026
