Initializing, please wait a moment

Unminify JS: Memulihkan Keterbacaan JavaScript Terminifikasi

JavaScript yang diminifikasi memadatkan bundle menjadi satu baris padat dengan nama variabel satu huruf. Tempelkan ke unminifier JS online dan alat ini menyisipkan kembali spasi, jeda baris, dan indentasi dalam detik - tidak ada unggahan, tidak ada instalasi, tidak ada yang dikirim ke server.

PropertiNilai
FormatAlat online, tanpa install
KecepatanDi sisi browser; output terbaca dalam hitungan detik
PrivasiSumber tetap di perangkat; tidak ada yang di-upload
Penggantian nama variabelTidak dilakukan - nama satu huruf tetap satu huruf
Alat implementasihttps://freetoolonline.com/developer-tools/js-unminifier.html

Apa yang sebenarnya dilakukan unminify (dan apa yang tidak bisa dilakukannya)

Unminify membalikkan separuh murah dari minifikasi: ia menyisipkan kembali spasi putih, baris baru, dan indentasi konsisten, sehingga bundle satu baris menjadi kode terformat yang terbaca. Ia TIDAK membalikkan separuh mahal - penggantian nama. Variabel bernama a, b, t di bundle yang terminifikasi tetap dipanggil a, b, t setelah unminify, karena nama aslinya dibuang saat build dan tidak ada source map yang dipertahankan. Jika source map (file .map atau komentar inline //# sourceMappingURL=) tersedia, file itu menunjuk ke simbol asli dan merupakan artefak yang tepat untuk dimuat - bukan pass unminify. Pembingkaian untuk pembaca: unminify adalah alat yang tepat untuk "saya punya bundle pihak ketiga dan ingin membaca apa yang dilakukannya"; source map adalah alat yang tepat untuk "saya punya build saya sendiri dan ingin debug simbol asli".

Walkthrough tiga menit

  1. Salin bundle terminifikasi. Buka file .min.js di editor Anda atau di tab network browser (Response body), pilih semua, salin.
  2. Tempel ke editor. Buka https://freetoolonline.com/developer-tools/js-unminifier.html dan tempel ke panel input. Bundle panjang - ratusan KB atau lebih - bekerja, tetapi tunggu pass format butuh satu atau dua detik saat parser berjalan melewati AST.
  3. Klik Unminify. Panel kanan menampilkan output yang terindentasi. Salin hasil kembali ke editor Anda atau simpan sebagai file .js lokal untuk pembacaan gaya grep.

Di mana output unminified membantu dan di mana tidak

Membaca kode pihak ketiga yang sudah di-unminify bermanfaat dalam tiga situasi konkret. Pertama, triase kerentanan - ketika CVE menyebut fungsi di dalam bundle vendor, unminify memungkinkan Anda menemukan situs panggilan dan membaca alur sekitarnya tanpa menyiapkan repo asli. Kedua, konfirmasi perilaku - ketika perilaku library berubah antar versi, membandingkan versi unminified menampilkan perubahan jauh lebih cepat daripada membaca bentuk padat satu baris. Ketiga, verifikasi output build - ketika pipeline Anda sendiri memancarkan bundle yang secara misterius memuat ganda polyfill, bentuk unminified menampilkan blok IIFE duplikat sekilas. Unminify tidak akan membantu ketika tujuannya adalah nama semantik asli; untuk itu, kirim source map bersama bundle dan muat di debugger Anda.

Apa yang dipertahankan, apa yang hilang

Spasi putih, baris baru, dan indentasi dipulihkan secara deterministik dari AST. Komentar tidak dipulihkan - minifier menghapusnya saat build, dan tidak ada informasi yang tersisa di bundle untuk merekonstruksinya. Struktur modul (panggilan CommonJS require, pernyataan ESM import) dipertahankan seperti yang muncul dalam bentuk bundled, yang sering merupakan wrapper hasil generate alih-alih batas modul asli. Optimisasi tingkat sumber seperti constant folding (5*60*60*1000 diciutkan ke 18000000) tidak dibalikkan - unminify tidak memahami semantik, hanya sintaks. Jika angka tampak rahasia dalam output unminified, cari di repo asli atau tebak unitnya (milidetik, byte, indeks).

Ingin ke arah sebaliknya?

Jika Anda tiba di sini ingin mengecilkan JS untuk produksi alih-alih memperluasnya, alat pendamping di https://freetoolonline.com/developer-tools/js-minifier.html melakukan arah maju (penghapusan spasi putih, penyingkatan identifier) dan panduan perbandingan CSS Minifier vs Uglifier vs Tree-Shaking mencakup bagaimana tiga transformasi bertumpuk dalam pipeline build tipikal. Untuk padanan sisi CSS, lihat CSS Unminifier vs Prettier: Kapan Menggunakan yang Mana - keputusan sisi JS serupa: unminify saat membaca output pihak ketiga, source map saat debug milik Anda sendiri.

Pertanyaan yang sering diajukan

Apakah unminify memulihkan nama variabel asli?

Tidak. Minifier mengganti identifier dengan nama sintetis pendek saat build dan membuang yang asli; output unminified mempertahankan nama sintetis. Muat source map yang sesuai di debugger browser Anda untuk melihat simbol asli.

Apakah sumber diunggah ke mana pun?

Tidak. Pass unminify berjalan sepenuhnya di browser Anda; teks terminifikasi tidak pernah dikirim ke server. Tutup tab dan input hilang.

Apakah unminify akan merusak JavaScript?

Tidak. Transformasi murni kosmetik - spasi putih, baris baru, dan indentasi. AST tidak berubah, sehingga kode unminified berjalan identik dengan minified asli. Jalankan melalui pemeriksa sintaks jika Anda ingin konfirmasi sabuk-pengaman.

Berapa batas ukuran file?

Bundle hingga beberapa megabyte bekerja di browser modern; waktu pass format tumbuh hampir linear dengan panjang input. Bundle yang sangat besar (10 MB+) dapat menggagalkan tab; dalam hal itu pisahkan bundle berdasarkan batas closure dan unminify setiap chunk secara terpisah.

Apa perbedaan antara unminify dan prettier?

Unminify memulihkan format terbaca pada kode yang sengaja dipadatkan. Prettier (atau formatter serupa) memberlakukan style guide yang dipilih pada kode yang sudah terbaca. Untuk bundle pihak ketiga yang terminifikasi, unminify dulu; jika Anda kemudian ingin lebar indentasi atau gaya tanda kutip tertentu, jalankan prettier pada output.

Ketika tujuan Anda adalah menghasilkan JS lebih kecil daripada membacanya, panduan how to minify css js for cloud run cold start mencakup langkah-langkah pipeline build untuk menghapus CSS dan JS sebelum deployment container.

Why trust these tools

  • Ten-plus years of web tooling. The freetoolonline editorial team has shipped browser-based utilities since 2015. The goal has never changed: get you to a working output fast, without an install.
  • No install, no sign-up. Open a tool and get a working output in seconds - nothing to download and no account to create. Tools that need heavy processing run it on our service, so even a low-powered machine gets the job done.
  • Analytics stops at the page view. We measure which pages get visited, not what you type or upload inside a tool. There is nothing to sign in to and no profile is attached to your input.
  • Open-source core components. The processing engines underneath (libheif, libde265, pdf-lib, terser, clean-css, ffmpeg.wasm, and others) are public and audit-able. We link to each one in its tool page's footer.
  • Free, with or without ads. All tools are fully functional without sign-up. The Disable Ads button in the header is always available if you need a distraction-free run.

Related tools:

  • MD5 converter - Free online MD5 hash generator and MD5-to-text reverse lookup.
  • Convert PDF to TEXT online - Extract text from PDF online for copying and editing.
  • Text To HTML Editor - Text to HTML editor online - write in a WYSIWYG view and watch the generated HTML update live, with
  • CSS Gradient Animator Generator - CSS gradient generator - build animated linear gradients with live preview; copy ready-to-paste CSS
  • CSS Minifier - Minify CSS online for faster page loads.
  • CSS UnMinifier - CSS unminifier online - beautify minified CSS with proper indentation, line breaks, and readable
  • JavaScript Minifier - JavaScript minifier online free - paste your JS, click Minify, and copy the compressed code.
  • JSON Parser By Tree View - Paste JSON to validate, format, and view it in a tree.
  • JavaScript UnMinifier - JavaScript unminifier online - reformat minified JS with indentation and line breaks for
  • Keyboard Test - Keyboard test online - press each key to highlight it, spot non-working keys, and verify Num Lock,
  • Text Diff - Text diff online - compare two text blocks and highlight added, removed, and changed characters,
  • Developer Tools - Developer tools to parse JSON, minify or unminify CSS/JS, compare text, and generate MD5 hashes.

Tags: #guide, #developer, #javascript, #unminifier, #beautifier

Related guides: