CodeKitHub
Bahasa Indonesia
Alat Kode

JavaScript Minifier & Formatter

Tempel JavaScript di bawah ini untuk melakukan minify — memendekkan nama variabel, menghapus whitespace dan dead code — atau beautify menjadi kode yang rapi dan berindentasi. Kedua arah proses ini mem-parse kode Anda menjadi syntax tree sungguhan alih-alih trik teks, sehingga regex literal, template string, dan scoping ditangani dengan benar.

Apa Itu Alat Ini?

JavaScript minifier menulis ulang kode agar sekecil mungkin sambil berperilaku identik: memendekkan nama variabel dan fungsi jika aman, menghapus komentar dan whitespace, melipat konstanta, dan menghilangkan kode yang tidak terjangkau.

Tool ini dibangun di atas Terser, minifier berbasis AST yang digunakan webpack, Vite, Rollup, dan sebagian besar build tool JavaScript modern. Karena benar-benar mem-parse kode Anda alih-alih mencocokkan teks secara pola, tool ini dengan benar membedakan operator pembagian dari regex literal, tidak merusak template string yang berisi urutan mirip //, dan tidak akan mengganti nama variabel menjadi nama yang bentrok dengan sesuatu di scope luar.

Mengapa Menggunakannya?

  • Minifikasi berbasis AST (Terser), engine yang sama digunakan bundler-bundler besar — aman dengan regex literal, template string, dan closure.
  • Memendekkan nama variabel untuk penghematan ukuran sungguhan, bukan sekadar menghapus whitespace.
  • Lihat persis berapa byte dan persentase yang Anda hemat.
  • Mode Format mengubah JS terminifikasi satu baris yang membingungkan kembali menjadi kode yang rapi dan berindentasi — berguna untuk memahami script pihak ketiga.
  • Pemrosesan 100% lokal — kode berpemilik tidak pernah meninggalkan browser Anda.

Cara Menggunakan

  1. Tempel JavaScript Anda ke kotak input, atau klik "Load Example" untuk mencoba contoh dengan regex literal dan template string.
  2. Klik "Minify" untuk mengompresinya, atau "Format" untuk merapikannya dengan indentasi 2 spasi.
  3. Periksa pesan di bawah kotak — mode minify menampilkan pengurangan ukuran; error sintaks di kode Anda menampilkan pesan yang jelas alih-alih diam-diam menghasilkan output rusak.
  4. Klik "Copy" untuk mengambil hasilnya.

Contoh

Input

function greet(name) {
  const pattern = /^[a-z]+$/i;
  const msg = `Hello, ${name}!`;
  if (pattern.test(name)) {
    // simple check
    return msg;
  }
  return "Hi there";
}

Output

function greet(n){const e=/^[a-z]+$/i,g=`Hello, ${n}!`;return e.test(n)?g:"Hi there"}

Nama variabel diperpendek, komentar dan pernyataan if diringkas menjadi sebuah ekspresi, tapi regex literal dan template string dipertahankan persis dan perilakunya tidak berubah.

Tips praktis

  • Minify saat build time, bukan dengan mengedit manual — simpan source yang mudah dibaca di version control dan hasilkan bundle terminifikasi sebagai langkah build.
  • Jika output terminifikasi berperilaku tidak terduga, periksa kode yang mengandalkan Function.prototype.name atau reflection — pemendekan nama mengubah nama fungsi dan itu bisa muncul di kasus-kasus langka.
  • Memformat script pihak ketiga sebelum membacanya jauh lebih cepat dibanding mencoba mem-parse satu baris sepanjang 2.000 karakter.
  • Gabungkan dengan HTML minifier dan CSS minifier di bawah jika Anda sedang menyiapkan bundle statis penuh untuk deployment.

Di mana tool ini digunakan dalam workflow nyata

JavaScript biasanya adalah aset paling besar yang memblokir render atau parsing di sebuah halaman, jadi meminify-nya punya dampak nyata dan terukur pada waktu muat — lebih besar dari HTML atau CSS byte demi byte. Kebanyakan framework modern melakukan ini otomatis saat build time, tapi script tulisan tangan, ekstensi browser, dan bookmarklet sering dirilis tanpa diminify kecuali seseorang menjalankannya lewat tool seperti ini.

Arah Format biasa digunakan sebaliknya: men-debug error produksi dari stack trace terminifikasi jauh lebih mudah setelah kode di sekitarnya diformat ulang dan mudah dibaca, bahkan tanpa nama variabel aslinya.

HTML Minifier · CSS Minifier

Kasus penggunaan umum

  • Memperkecil script mandiri atau bookmarklet sebelum dipublikasikan.
  • Memformat ulang script terminifikasi yang diambil dari situs live untuk memahami cara kerjanya.
  • Membersihkan JavaScript yang ditempel dari postingan forum atau potongan hasil AI sebelum membacanya dengan teliti.
  • Memeriksa dengan cepat apakah potongan JS tulisan tangan punya error sintaks, karena kegagalan parse langsung tampil sebagai pesan yang jelas.

Pertanyaan yang Sering Diajukan

Apakah JavaScript saya diunggah ke suatu tempat?

Tidak. Proses minify dan format keduanya terjadi secara lokal di browser Anda menggunakan JavaScript. Tidak ada yang Anda tempel dikirim ke server, sehingga aman untuk kode berpemilik atau yang belum dirilis.

Apakah JavaScript terminifikasi aman untuk dirilis — akan merusak kode saya?

Dibangun di atas Terser, minifier berbasis AST yang dipercaya webpack, Vite, dan Rollup untuk build produksi, sehingga mem-parse JavaScript dengan benar alih-alih menebak dari teks. Meski begitu, minifier mana pun kadang bisa berinteraksi buruk dengan kode yang mengandalkan function.name, eval(), atau global non-standar — uji bundle Anda setelah minify, seperti yang Anda lakukan dengan build tool apa pun.

Apakah minify mengobfuskasi kode saya?

Ini memendekkan nama variabel dan menghapus struktur, yang membuat kode lebih sulit dibaca, tapi ini bukan obfuskasi atau perlindungan sungguhan — siapa pun tetap bisa menjalankannya lewat formatter (seperti tombol Format di sini) dan membaca logikanya. Jangan andalkan minify untuk menyembunyikan rahasia atau logika bisnis.

Seberapa besar biasanya ukuran JavaScript berkurang?

Kode tulisan tangan dengan nama variabel panjang, komentar, dan whitespace umumnya menyusut 50-70% melalui minify dan pemendekan nama. Kode yang sudah dihasilkan oleh bundler akan menghemat lebih sedikit.

Bisakah saya membaca JavaScript terminifikasi dari situs yang sedang saya periksa?

Bisa — tempel dan klik "Format" untuk mengindentasi ulang. Nama variabel akan tetap pendek dan tanpa makna karena minify sudah membuang nama aslinya, tapi strukturnya menjadi mudah dibaca.

Alat Terkait