TypeScript Online - IDE, Editor, Compiler, Interpreter

Kompilasi TypeScript 5.6 ke JavaScript dan jalankan di browser Anda. Lihat output konsol dan JavaScript yang dihasilkan secara berdampingan.

TypeScript 5.6 · Berjalan di browser Anda, sehingga kode Anda tidak pernah sampai ke server kami.
main.tsTypeScript
Output

            
        
Ctrl/⌘ + Enter untuk menjalankan

Fitur compiler TypeScript online (IDE, editor & interpreter)

Tulis, jalankan, dan uji kode TypeScript online secara gratis. Halaman ini berfungsi sebagai IDE, editor kode, compiler, dan interpreter TypeScript online sekaligus: ketik kode Anda, tekan Jalankan, dan lihat outputnya seketika. Semuanya berjalan di browser Anda, tanpa perlu menginstal apa pun dan tanpa membuat akun.

  • Jalankan kode seketika: TypeScript 5.6, dengan output dalam waktu kurang dari satu detik setelah pemuatan pertama.
  • Editor kode: penyorotan sintaks, nomor baris, pencocokan kurung, dan penutupan kurung otomatis.
  • Error yang jelas: pesan error dan peringatan muncul di panel output, seperti di komputer Anda sendiri.
  • Layar penuh: Ctrl/⌘ + Shift + F, ukuran font yang dapat diatur, tata letak berdampingan atau bertumpuk, dan panel yang dapat diubah ukurannya.
  • Simpan otomatis: kode Anda disimpan di browser; download sebagai main.ts atau salin dengan satu klik.
  • Aman untuk bereksperimen: batas waktu dan tombol Hentikan mengakhiri loop tak terbatas.
  • Privat: runtime TypeScript berjalan di perangkat Anda, sehingga kode Anda tidak pernah diupload.
  • Mode gelap dan pintasan keyboard: Ctrl/⌘ + Enter menjalankan kode.
  • Gratis: tanpa daftar, tanpa batas penggunaan.

Pelajari bahasa pemrograman lain

Cara menggunakan compiler TypeScript online

  1. Tulis atau tempel TypeScript ke editor, atau mulai dari contoh (Reset contoh mengembalikannya).
  2. Tekan Jalankan atau gunakan Ctrl + Enter (⌘ + Enter di Mac).
  3. Kode Anda dikompilasi menjadi JavaScript. Jika compiler menemukan error sintaks, error itu ditampilkan beserta kode error TS, baris, dan kolomnya, dan tidak ada yang dijalankan.
  4. Jika kompilasi berhasil, JavaScript dijalankan. Output console.log muncul di panel Output, dan Anda bisa membuka JavaScript yang dihasilkan di bawah editor untuk melihat persis apa yang dihasilkan compiler.
  5. Pilih batas waktu 5, 15, atau 60 detik, atau tekan Hentikan untuk mengakhiri proses lebih awal.

Pada proses pertama, halaman mengunduh compiler TypeScript resmi, sekitar 3 MB. Browser Anda menyimpannya di cache, jadi proses berikutnya dimulai dengan cepat.

Kompilasi dan eksekusi sama-sama berlangsung di Web Worker di browser Anda. Kode Anda tidak diunggah dan tidak disimpan di server kami. Editor menyimpan kode terakhir Anda di local storage browser Anda, dan tidak di tempat lain.

Apa saja yang didukung

Halaman ini memakai TypeScript 5.6, compiler resmi dari Microsoft. Targetnya ES2022 dan hasilnya dijalankan di mesin JavaScript browser Anda.

  • Semua sintaks TypeScript: anotasi tipe, interface, type alias, generic, union dan intersection type, enum, access modifier, satisfies, as const, dan lainnya.
  • Output JavaScript modern dengan class, async/await, dan optional chaining yang dibiarkan utuh.
  • await tingkat atas, timer, dan promise, sama seperti Compiler JavaScript Online.

Keterbatasan:

  • Hanya transpile. Compiler menghapus tipe dan melaporkan error sintaks, tetapi tidak melakukan type-checking penuh. Kode seperti const n: number = "text" tetap dikompilasi dan dijalankan. Gunakan tsc --noEmit atau editor Anda bila membutuhkan error tipe semantik.
  • Tanpa DOM: kode berjalan di worker, jadi document dan window tidak tersedia.
  • Tanpa import: paket npm, pernyataan import, dan API Node.js tidak dapat dipakai.

Referensi singkat TypeScript

type Shape =
  | { kind: "circle"; r: number }
  | { kind: "rect"; w: number; h: number };

function area(s: Shape): number {
  switch (s.kind) {
    case "circle": return Math.PI * s.r ** 2;
    case "rect":   return s.w * s.h;
  }
}

function first<T>(items: T[]): T | undefined {
  return items[0];
}

const shapes: Shape[] = [{ kind: "circle", r: 1 }, { kind: "rect", w: 2, h: 3 }];
console.log(shapes.map(area));   // [3.141592653589793, 6]
console.log(first(shapes)?.kind);
KonsepSintaks
Variabel bertipelet count: number = 0;
Interfaceinterface User { id: number; name?: string }
Union typetype Id = string | number;
Fungsi genericfunction wrap<T>(v: T): T[] { return [v]; }
Array readonlyconst xs: readonly number[] = [1, 2];
Enumenum Dir { Up, Down }

Tips

  • Buka JavaScript yang dihasilkan untuk mempelajari bagaimana fitur seperti enum, parameter property, dan class field dikompilasi. Ini cara cepat untuk memahami apa yang dilakukan TypeScript saat runtime.
  • Ingatlah bahwa tipe menghilang saat runtime. Untuk memvalidasi data dari luar (seperti JSON hasil parse), tulis pemeriksaan runtime atau type guard seperti function isUser(x: unknown): x is User.
  • Perlu merapikan output sebelum menyalinnya ke proyek? Tempel ke JavaScript Formatter & Minifier.
Tips: Error seperti TS1005: ';' expected berarti kode tidak bisa di-parse. Perbaiki baris dan kolom yang ditampilkan di output, lalu jalankan lagi.

Pertanyaan yang sering diajukan

Apakah ini memeriksa tipe saya?

Tidak. Compiler memakai mode transpile, yang hanya melaporkan error sintaks. Itu membuatnya cepat dan ringan, tetapi ketidakcocokan tipe tidak dilaporkan. Untuk pemeriksaan penuh, jalankan tsc secara lokal atau pakai editor dengan TypeScript language service.

Apa perbedaan TypeScript dan JavaScript?

TypeScript adalah JavaScript dengan tipe statis yang opsional. Browser tidak bisa menjalankan TypeScript secara langsung, jadi TypeScript lebih dulu dikompilasi menjadi JavaScript biasa dengan menghapus tipe dan menurunkan beberapa fitur khusus TypeScript, seperti enum. Anda bisa melihat hasil langkah itu di halaman ini.

Versi TypeScript apa yang dipakai?

TypeScript 5.6, dengan ES2022 sebagai target output.

Bisakah saya mengimpor library?

Tidak. Setiap proses mengompilasi dan mengeksekusi satu file tanpa module resolution, jadi pernyataan import dan paket npm tidak didukung. Lihat semua tool developer kami untuk utilitas terkait.

Diperbarui

Tersalin ke clipboard