Converti TypeScript in JavaScript Online
Trascrivi TypeScript in JavaScript nel tuo browser. Non serve installare Node.js o tsc. Perfetto per imparare TS e condividere codice.
function greet(user: User) {
const greeting = "Hello, " + user.name;
return greeting;
}
const users: User[] = [
{ name: "John", age: 30, active: true },
];Perche usare questo trascrittore
TypeScript in JavaScript: nessuna installazione necessaria
Nessun Node.js o npm
Trascrivi TypeScript direttamente nel browser. Nessuna installazione di tsc, nessun tsconfig.json, nessuna dipendenza.
Compilatore ufficiale
Usa il compilatore TypeScript di Microsoft compilato in WebAssembly: stesso output del tsc locale.
Impara TypeScript
Capisci esattamente cosa genera il compilatore dai tuoi tipi, interfacce e generici.
Condividi il codice
Condividi snippet JavaScript con team o ambienti che non hanno TypeScript configurato.
Come funziona
Tre passaggi, senza complicazioni
Incolla il tuo codice TypeScript
Incolla il codice .ts: interfacce, tipi, generici, enum, decoratori o qualsiasi funzionalita TypeScript che vuoi convertire in JavaScript semplice.
Trascrizione istantanea
Il compilatore TypeScript ufficiale (compilato in WebAssembly) rimuove le annotazioni di tipo e trascrive in JavaScript ES2015+ in millisecondi.
Copia il JavaScript risultante
Ottieni il JavaScript equivalente pronto per girare in un browser, Node.js o per condividere con team che non usano TypeScript.
FAQ
Hai delle domande?
Il trascrittore rimuove tutti gli elementi esclusivi di TypeScript senza rappresentazione in JavaScript: le annotazioni di tipo (: string, : number, : boolean, : T[], ecc.), le interfacce (interface User {}), gli alias di tipo (type ID = string), i generici (<T>, <T extends U>), i modificatori di accesso (public, private, protected, readonly sulle classi), le enumerazioni (enum Direction {} viene convertito in un oggetto JavaScript), l'operatore di asserzione di tipo as, la parola chiave declare per le dichiarazioni ambient e i decoratori sperimentali (@Component, @Injectable). Le strutture di controllo, le funzioni, le classi (la parte di valore, non di tipo), i moduli import/export e tutta la logica del programma vengono preservati esattamente.
Il trascrittore online usa il compilatore TypeScript ufficiale (sviluppato da Microsoft, pubblicato come open source nell'ottobre 2012, attualmente alla versione 5.x) con la configurazione target ES2015 o ES2017. Per la vera produzione, il flusso di lavoro corretto e: installare TypeScript con npm install typescript, configurare tsconfig.json con la severita appropriata (strict: true e la pratica raccomandata da TypeScript 2.3) e lanciare tsc o usare bundler come Vite, esbuild, SWC o webpack con ts-loader. Il vantaggio di un trascrittore online e la velocita per l'esplorazione, l'apprendimento o la condivisione di snippet: non sostituisce la toolchain di produzione con il controllo dei tipi, le source map e le ottimizzazioni del bundle.
TypeScript ha due sistemi di decoratori: i decoratori legacy (--experimentalDecorators, disponibili da TypeScript 1.5 nel 2015, usati da Angular, NestJS e inversify) e i decoratori TC39 Stage 3 (implementati in TypeScript 5.0, marzo 2023, in base alla proposta ECMAScript). Il trascrittore online supporta entrambi tramite la configurazione corrispondente. I decoratori legacy generano codice JavaScript con chiamate a __decorate() e __metadata(); i decoratori TC39 Stage 3 generano codice piu pulito seguendo la proposta ECMAScript standard.
TypeScript supporta JSX (JavaScript XML, la sintassi di template di React) tramite i file .tsx. La configurazione jsx del compilatore controlla come JSX viene trasformato: react (trasforma in React.createElement(), comportamento classico), react-jsx (trasforma usando il nuovo JSX transform di React 17+, importando da react/jsx-runtime), react-native (lascia JSX non trasformato) e preserve (lascia JSX per un altro trascrittore come Babel). Per i progetti React con TypeScript, il flusso di lavoro raccomandato e usare Vite (che usa esbuild internamente per TSX) o CRA/Next.js che include la trascrizione TSX per impostazione predefinita.
Si. Gli import ed export di moduli ES6 (import x from y, export default, export const) vengono preservati per impostazione predefinita quando il target e ES2015 o superiore. TypeScript rimuove anche gli import solo di tipo (import type { User } from './types'), poiche non hanno una rappresentazione a runtime. Quando il target e CommonJS (module: commonjs in tsconfig), gli import/export vengono trasformati in require()/module.exports, il sistema di moduli di Node.js. Per l'uso nel browser con moduli ES nativi, il target ES2015 con module: ESNext e il piu appropriato.
Si. TypeScript e stato progettato da Anders Hejlsberg (anche progettista di C# e Turbo Pascal) in Microsoft e pubblicato come open source nell'ottobre 2012. La definizione ufficiale e che TypeScript e JavaScript tipizzato per applicazioni su larga scala. Qualsiasi JavaScript valido e TypeScript valido: puoi rinominare qualsiasi file .js in .ts senza modifiche. TypeScript aggiunge: il sistema di tipi (annotazioni, interfacce, generici), le enumerazioni, i decoratori sperimentali e alcune funzionalita ECMAScript in fase avanzata. Il compilatore tsc e stato il primo trascrittore JavaScript moderno ampiamente adottato, precursore dell'attuale ecosistema di Babel, esbuild, SWC e Vite.
TypeScript in JavaScript online: trascrivi TS senza installare Node.js o tsc
TypeScript e un linguaggio di programmazione sviluppato da Microsoft e pubblicato come open source nell'ottobre 2012. Fu progettato da Anders Hejlsberg, anche responsabile del design di C# (2000) e Turbo Pascal (1983), con l'obiettivo di scalare JavaScript per le grandi applicazioni tramite un sistema di tipi statico opzionale. TypeScript e un superset sintattico di JavaScript (ECMAScript): qualsiasi JavaScript valido e TypeScript valido, e il compilatore tsc (TypeScript Compiler) produce JavaScript standard. TypeScript 5.x (il ramo della versione principale avviato con TypeScript 5.0 nel marzo 2023) e uno dei linguaggi piu diffusi secondo il Developer Survey di Stack Overflow 2024, con un'adozione massiccia in ecosistemi come Angular (che richiede TypeScript dalla versione 2 nel 2016), NestJS, Next.js e praticamente ogni progetto frontend su larga scala. La necessita di un trascrittore online si presenta in diversi scenari: esplorare rapidamente come TypeScript compila una funzionalita specifica senza configurare un progetto locale, apprendimento interattivo del sistema di tipi, condivisione di codice con sviluppatori o team che lavorano con JavaScript semplice e prototipazione rapida di snippet.
Il processo di trascrizione da TypeScript a JavaScript consiste essenzialmente nell'erasure dei tipi: il compilatore analizza il codice TypeScript, verifica la coerenza del sistema di tipi (in modalita di controllo completo dei tipi, non disponibile nella pura trascrizione) e genera JavaScript rimuovendo tutte le informazioni di tipo che non hanno rappresentazione a runtime. Gli elementi rimossi sono: le annotazioni di tipo su variabili, parametri di funzione e tipi di ritorno; le interfacce complete e gli alias di tipo (non esistono in JavaScript); i modificatori di accesso sulle classi (public/private/protected sono esclusivi di TypeScript); i parametri di tipo nei generici; le asserzioni di tipo (as Type, <Type>valore); e le dichiarazioni ambient (declare). Gli elementi che vengono trasformati (non solo rimossi) sono: le enumerazioni (enum), che vengono convertite in oggetti JavaScript con mappatura bidirezionale; i decoratori legacy con --experimentalDecorators, che generano codice helper __decorate() e __metadata(); e le funzionalita ECMAScript in fase avanzata che TypeScript implementa prima che siano disponibili in tutti i motori.
L'ecosistema di strumenti per la trascrizione TypeScript si e evoluto significativamente. Il compilatore tsc originale (scritto in TypeScript, disponibile come pacchetto npm typescript dal 2012) e il riferimento comportamentale e quello che fornisce il controllo completo dei tipi. Per la velocita di build nei progetti grandi, sono emerse alternative che privilegiano la velocita di trascrizione rispetto al controllo dei tipi: esbuild (Evan Wallace, 2020, scritto in Go, 10-100x piu veloce di tsc), SWC (2019, scritto in Rust, usato da Next.js e Vercel) e il trasformatore TypeScript di Babel (@babel/plugin-transform-typescript, 2018). Questi strumenti eseguono l'erasure dei tipi senza controllarli: per il controllo dei tipi in CI/CD, tsc --noEmit viene eseguito in parallelo. Vite (Evan You, 2020) usa esbuild per la trascrizione TypeScript in sviluppo e Rollup per la produzione. Convertir.ai usa il compilatore TypeScript ufficiale compilato in WebAssembly per garantire la piena fedelta al comportamento di tsc, eseguendo l'intero processo nel tuo browser senza inviare codice ad alcun server.