Perapih & Pemformat JavaScript Online (JS Beautifier)

Format, unminify, dan bersihkan kode JavaScript (.js / .min.js) yang berantakan atau terkompresi secara instan dan real-time. Pemformat JS sadar-token kami menangani fungsi panah ES6+, template literal, ekspresi reguler, perulangan for, URL https://, dan panggilan metode berantai secara akurat—serta menyertakan Minifier JS sekali klik untuk kode produksi yang ringkas.

Preset Cepat:

Input: 0 kar

Output: 0 kar

Baris: 0

Blok: 0

Cara Merapikan & Meng-unminify JavaScript Secara Online

  1. Tempel Kode Anda: Tempel bundel .min.js yang terkompresi atau skrip yang belum diformat ke dalam editor Input JavaScript di sebelah kiri, atau klik Muat Contoh untuk menguji fitur ES6+.
  2. Pilih Preset Cepat atau Sesuaikan Opsi: Klik 2 Spasi (Standar), 4 Spasi, Allman + Pisah Rantai, atau Minify (.min.js), atau atur penempatan kurung kurawal, spasi kondisional, dan penghapusan komentar di panel sebelah kanan.
  3. Tinjau Secara Real-Time: Output yang diformat beserta penghitung karakter/baris/blok diperbarui secara otomatis saat Anda mengetik atau mengubah pengaturan.
  4. Salin atau Unduh: Klik Salin ke Clipboard atau Unduh .js untuk menyimpan script.beautified.js (atau script.min.js).

Penjelasan Opsi Pemformatan JavaScript

Opsi Fungsi Kontrol Sebelum Sesudah
Kurung Kurawal Baris Sama (K&R) Menempatkan kurung buka { pada baris header (dicentang) atau pada baris baru dalam gaya Allman (tidak dicentang). if(ok){run();}else{stop();} if (ok) {
  run();
} else {
  stop();
}
Spasi Sebelum Kondisional Mengatur apakah spasi muncul di antara if, for, while, switch, catch dan (. for(let i=0;i<5;i++) for (let i = 0; i < 5; i++)
Pisahkan Metode Berantai Memecah rantai metode (.filter().map().sort()) menjadi baris-baris berindentasi. items.filter(fn).map(fn).sort(); items.filter(fn)
  .map(fn)
  .sort();
Hapus Komentar Menghapus komentar // dan /* */ sambil menjaga string https:// dan regex tetap utuh. const u = "https://a.com"; // url const u = "https://a.com";

Mengapa Menggunakan Pemformat JavaScript Sadar-Token?

Memformat JavaScript dengan aturan penggantian teks sederhana sering kali merusak kode yang valid karena karakter seperti /, ;, dan { memiliki arti berbeda tergantung konteksnya. Pemformat kami menggunakan tokenizer leksikal JavaScript khusus yang memahami:

  • String & Template Literal ES6: Tanda kutip tunggal ('...'), tanda kutip ganda ("..."), template string backtick (`Halo ${name}`), dan garis miring terbalik yang di-escape ("C:\\Users\\") dipertahankan apa adanya.
  • Ekspresi Reguler vs. Pembagian: Membedakan literal regex seperti /^user_[0-9]+;?/i dari ekspresi pembagian seperti (a + b) / 2 sehingga titik koma atau garis miring di dalam regex tidak pernah memecah baris.
  • Header Perulangan for (...): Titik koma di dalam for (let i = 0; i < n; i++) tetap berada pada baris header yang sama alih-alih terpecah menjadi tiga baris terpisah.
  • Penghapusan Komentar yang Aman: Komentar satu baris // dan multibaris /* */ ditokenisasi secara terpisah, sehingga URL seperti "https://api.example.com" tidak pernah terpotong saat menghapus komentar.

Pertanyaan yang Sering Diajukan (FAQ)

Bagaimana cara meng-unminify file .min.js secara online?

Tempel kode .min.js Anda yang terkompresi ke dalam editor Input JavaScript di sebelah kiri. Tokenizer secara otomatis menguraikan pernyataan, blok, fungsi, dan perulangan dengan indentasi multibaris yang rapi secara real-time.

Apakah menghapus komentar akan memengaruhi URL https:// atau literal regex di JavaScript saya?

Tidak. Karena pemformat kami menggunakan tokenizer leksikal alih-alih ekspresi reguler sederhana, // dan /* */ di dalam string tanda kutip tunggal, tanda kutip ganda, template literal, serta ekspresi reguler (/pola/g) tidak pernah dihapus atau dimodifikasi.

Apa perbedaan antara gaya kurung kurawal K&R (baris sama) dan Allman (baris baru)?

Gaya K&R menempatkan kurung kurawal buka { pada baris yang sama dengan header function, if, atau perulangan (standar di sebagian besar panduan gaya JavaScript). Menghapus centang Kurung kurawal pada baris yang sama akan beralih ke gaya Allman, yang menempatkan kurung kurawal buka pada baris baru tersendiri sejajar dengan kurung kurawal tutup.

Bisakah saya juga memperkecil (minify) JavaScript dengan alat ini?

Ya. Klik tombol Minify JS (atau pilih Minify (Satu Baris .min.js) di panel pengaturan) untuk menghapus komentar dan spasi kosong yang tidak perlu sambil tetap menjaga spasi kata kunci yang wajib ada.

Apakah kode JavaScript saya diunggah ke server mana pun?

Tidak. Semua pemformatan dan minifikasi JavaScript dijalankan 100% secara lokal di browser Anda. Kode sumber Anda tidak pernah meninggalkan perangkat Anda.