AI di perangkat — profesional dan privat.

Pengurut kunci JSON

Urutkan kunci JSON tanpa menyentuh satu nilai pun.

  • Tanpa unggahan
  • Nilai bita demi bita
  • Duplikat dipertahankan
  • JSON, JSONC & NDJSON

Jatuhkan berkas JSON di sini

JSON, JSONC, NDJSON atau JSON Lines · hingga 25.0 MB

Pengaturan pengurutan
Prasetel
Urutan
Urutan
Arah
Kedalaman
Kedalaman

Larik tidak dihitung sebagai tingkat, jadi «Hanya tingkat teratas» mengurutkan setiap rekaman dalam daftar.

Lanjutan
Keluaran
Indentasi
Kumpulan
Pro

Versi gratis mengurutkan satu dokumen dalam satu waktu.

Apa yang dilakukan pengurut kunci JSON ini

Urutkan kunci objek JSON secara alfabetis dan rekursif untuk menghasilkan keluaran yang stabil dan ramah diff, sambil mempertahankan urutan larik dan format yang rapi. Objek bersarang diproses secara rekursif; urutan elemen larik dibiarkan apa adanya kecuali Anda meminta sebaliknya. Tempel, unggah, atau seret dan jatuhkan; JSON yang tidak valid menampilkan baris, kolom, dan penanda tepat di masalahnya, dengan tautan ke Pemformat dan Validator. Pilih keluaran 2 spasi, 4 spasi, tab, atau diperkecil, lalu unduh berkas atau salin hasilnya.

  • Tiga urutan — alfabetis, natural (item2 sebelum item10), atau menurut panjang kunci, ke dua arah.
  • Kunci tersemat — daftarkan bidang yang harus berada di atas dan bidang itu tetap di sana, pada setiap tingkat, dengan sisanya terurut di bawahnya.
  • Batas kedalaman — urutkan semua tingkat, hanya yang terluar, atau sedalam yang Anda pilih.
  • Nilai bita demi bita — bilangan bulat besar, 1.0, 1e5, dan karakter ber-escape keluar persis seperti saat masuk.
  • Duplikat dipertahankan — kedua anggota bertahan dan dihitung, atau Anda bisa menghapus salah satunya dengan sengaja.
  • Komentar dan JSON Lines — komentar JSONC ikut berpindah bersama kunci yang dijelaskannya, dan berkas satu dokumen per baris diurutkan baris demi baris.

Pengurutan berjalan di luar thread utama halaman, sehingga antarmuka tetap responsif saat dokumen besar diproses.

Yang tidak pernah diubah oleh pengurut ini

Hampir semua alat JSON bekerja dengan cara yang sama: mem-parsing dokumen ke memori, menyusun ulang, lalu menyerialisasi kembali. Perjalanan bolak-balik itu tidak gratis, dan kehilangannya senyap: berkasnya terlihat baik-baik saja, JSON-nya valid, dan isinya tidak lagi sama seperti sebelumnya. Alat ini justru menyunting teksnya, menyalin setiap nilai karakter demi karakter, sehingga lima hal bertahan yang jika tidak akan hilang.

  • Bilangan bulat besar — pengenal seperti 12345678901234567890 kembali dengan dua puluh digitnya. Salinan hasil parsing mengembalikan 12345678901234567000, karena melewati bilangan titik-mengambang.
  • Cara sebuah angka ditulis — 1.0 tetap 1.0, 1e5 tetap 1e5, dan 0.10 mempertahankan nol di belakangnya. Perjalanan bolak-balik menulis ulang ketiganya.
  • Kunci duplikat — dokumen dengan kunci sama dua kali mempertahankan keduanya. Parser hanya menyimpan yang terakhir, dan tidak ada peringatan apa pun.
  • Escape pada teks — kunci atau nilai yang ditulis sebagai \u00e9 tetap begitu, bukan ditulis ulang menjadi karakter yang diwakilinya.
  • Kunci mirip angka — kunci bernama "10" tetap di tempat yang ditentukan pengurutan. Jika dibangun ulang di memori, kunci itu diperlakukan sebagai indeks larik, diangkat ke atas semua kunci lain, dan diurutkan menurut besarnya, apa pun urutan yang diminta.

Memilih urutan

Urutan mana yang tepat bergantung pada apa yang akan membaca berkas berikutnya, jadi ketiganya berjarak satu klik dan tidak ada yang disembunyikan di balik peningkatan paket.

  • Alfabetis — membandingkan kunci sebagai teks, karakter demi karakter. Inilah yang diharapkan alat diff, skema, dan sebagian besar panduan gaya, dan ini bawaannya.
  • Natural — membaca angka di dalam kunci sebagai bilangan, jadi item2 mendahului item10. Berguna setiap kali kunci bernomor.
  • Panjang kunci — yang terpendek dulu, seri dipecahkan secara alfabetis. Praktis untuk memindai objek konfigurasi lebar di mana kunci pendek adalah yang Anda setel.
  • Abaikan huruf besar-kecil — menyatukan Nama dan nama alih-alih memisahkannya menjadi dua blok, ejaan asli hanya dipakai untuk memecah seri.
  • Arah — kedua urutan bisa dibalik. Kunci tersemat tetap tersemat; membalik sisanya tidak mendorongnya ke bawah.
  • Menurut nilai — mengurutkan anggota setiap objek berdasarkan isinya, bukan berdasarkan namanya. Nilai dikelompokkan menurut tipe — null, lalu boolean, lalu angka, lalu teks — dan diurutkan di dalamnya; anggota yang berisi objek atau daftar tidak punya nilai sederhana dan ditempatkan terakhir.

Menyematkan kunci yang penting

Berkas yang murni alfabetis memang konsisten tetapi tidak selalu mudah dibaca: bidang yang pertama kali Anda cari berakhir di mana pun alfabet menaruhnya. Mendaftarkan kunci di Sematkan kunci ini di atas menempatkannya di puncak sesuai urutan yang Anda tulis, lalu mengurutkan sisanya di bawahnya.

  • Pada setiap tingkat — kunci tersemat tetap tersemat di mana pun ia muncul, bukan hanya di objek terluar.
  • Pencocokan awalan — tanda bintang di akhir mencakup satu keluarga kunci, jadi x-* menjaga semua bidang ekstensi tetap di atas.
  • Kecocokan pertama menang — menulis name sebelum n* menyematkan name di atas nickname alih-alih membiarkan wildcard mengambilnya.
  • Daftar siap pakai — prasetel package.json mengisi kotak dengan bidang yang biasanya mengawali berkas itu, agar manifes proyek terurut seperti yang diharapkan peninjau.

Seberapa dalam pengurutan berjalan

Mengurutkan seluruh pohon biasanya yang Anda inginkan, tetapi tidak selalu: berkas konfigurasi sering memiliki urutan yang bermakna di dalam bagian-bagiannya yang sebaiknya bertahan sementara bagian-bagian itu sendiri ditata. Kedalaman mengendalikan tepat hal itu.

  • Semua tingkat — setiap objek dalam dokumen, sedalam apa pun. Ini bawaannya.
  • Hanya tingkat teratas — kunci objek terluar berpindah dan tidak ada yang di bawahnya.
  • Sejumlah tingkat — urutkan dua atau tiga tingkat dan biarkan sisanya seperti tertulis.
  • Larik bersifat tembus pandang — larik tidak memakai satu tingkat, jadi Hanya tingkat teratas pada daftar rekaman mengurutkan kunci setiap rekaman. Menghitung larik akan membuat pengaturan ini tidak berefek pada bentuk yang paling umum.

Kunci duplikat dan apa yang harus dilakukan

JSON mengizinkan kunci yang sama dua kali dalam satu objek. Parser tidak: mereka menyimpan satu dan membuang sisanya, hampir selalu diam-diam, dan karena itulah duplikat bisa melewati beberapa alat dan baru ketahuan ketika sebuah nilai hilang. Pengurut ini menghitungnya, menampilkan jumlahnya, dan menyerahkan keputusannya kepada Anda.

  • Pertahankan semua — kedua anggota ditulis, berdampingan setelah pengurutan. Dokumen mempertahankan semua yang dibawanya. Ini bawaannya.
  • Pertahankan yang pertama — kemunculan paling awal tiap kunci disimpan dan yang berikutnya dihapus, dengan jumlahnya dilaporkan.
  • Pertahankan yang terakhir — kemunculan terakhir menang, yang memang akan dilakukan parser JavaScript, tetapi di sini terlihat dan disengaja.
  • Berlaku di mana saja — penghapusan tidak dibatasi pengaturan kedalaman. Meminta duplikat dihapus berarti di seluruh dokumen, bukan hanya sejauh pengurutan berjalan.

Larik, dan kapan ia berpindah

Posisi dalam larik membawa makna, jadi tidak ada yang menyusun ulang larik kecuali Anda menyalakannya. Dua pengaturan melakukannya, dan keduanya hanya bertindak jika seluruh larik cocok dengan aturannya — larik yang terurut separuh akan menjadi keluaran yang tidak bisa diperkirakan siapa pun dari kontrol yang menghasilkannya.

  • Urutkan larik nilai sederhana — menyusun ulang larik yang seluruh elemennya berupa teks, angka, boolean, atau null. Nilai dikelompokkan menurut tipe, lalu diurutkan di dalamnya.
  • Urutkan daftar objek menurut properti — sebut bidang seperti id dan daftar rekaman akan diurutkan menurutnya. Rekaman tanpa bidang itu mempertahankan urutan relatifnya di akhir.
  • Kunci di dalam larik selalu diurutkan — kunci objek di dalam larik mengikuti aturan biasa, baik pengaturan larik menyala maupun tidak. Yang dilindungi hanyalah posisi elemennya sendiri.

Berkas yang dibuka alat ini

Empat ekstensi, dan apa pun yang tidak bisa dibuka ditolak di kotak dialog berkas beserta alasan dan jalan keluarnya, bukan diterima lalu gagal di tengah jalan.

  • .json — satu dokumen JSON, dibaca secara ketat. Komentar dan koma di akhir ditolak kecuali Anda menyalakannya, karena menerimanya diam-diam akan membuat alat ini berbeda pendapat tentang apa itu JSON yang valid.
  • .jsonc — JSON dengan komentar dan koma di akhir, varian yang dipakai tsconfig.json dan pengaturan VS Code. Komentar tetap menempel pada kunci di bawahnya dan ikut berpindah bersamanya.
  • .ndjson dan .jsonl — satu dokumen per baris. Setiap baris diurutkan sendiri dan ditulis kembali pada barisnya sendiri, sehingga keluarannya tetap JSON Lines yang valid; pengaturan indentasi tidak berlaku dan alat ini mengatakannya.
  • .txt — diterima agar dokumen yang disimpan tanpa ekstensi tetap bisa dibuka. Isinya tetap harus berupa JSON.

Cara mengurutkan kunci JSON

Empat langkah, dan untuk kasus umum hanya dua langkah pertama yang diperlukan.

  1. Tambahkan JSON Anda — Jatuhkan berkas .json, .jsonc, .ndjson, atau .jsonl ke halaman, telusuri berkas, atau tempel JSON ke kotak di bawah area jatuhkan. Dokumen dibaca di perangkat Anda dan tidak pernah diunggah.
  2. Pilih urutan — Pilih urutan alfabetis, natural, atau menurut panjang kunci beserta arahnya. Aktifkan Abaikan huruf besar-kecil jika kapitalisasi tidak boleh menentukan posisi, dan atur seberapa dalam pengurutan berjalan.
  3. Atur opsi lanjutan — Buka Lanjutan untuk menyematkan kunci di atas, menentukan nasib kunci duplikat, mengurutkan larik nilai sederhana, mengurutkan daftar objek menurut salah satu propertinya, atau menerima komentar dan koma di akhir.
  4. Urutkan, lalu unduh atau salin — Tekan Urutkan kunci. Pilih keluaran 2 spasi, 4 spasi, tab, atau diperkecil, lalu unduh berkas atau salin hasilnya. Jika Anda mengubah pengaturan, hasilnya ditandai memakai pengaturan lama agar bisa Anda terapkan ulang.

Opsi sekilas

  • Urutan — alfabetis, natural, atau menurut panjang kunci, naik atau turun, dengan opsi mengabaikan huruf besar-kecil.
  • Kedalaman — semua tingkat, hanya yang teratas, atau sejumlah tingkat. Larik tidak dihitung sebagai tingkat.
  • Sematkan kunci ini di atas — daftar dipisahkan koma, dengan tanda bintang di akhir untuk pencocokan awalan.
  • Kunci duplikat — pertahankan semua, yang pertama, atau yang terakhir, dengan jumlah yang dihapus dilaporkan.
  • Pengurutan larik — opsional mengurutkan larik nilai sederhana, atau daftar objek menurut properti yang disebutkan.
  • Terima komentar dan koma di akhir — membaca JSONC alih-alih JSON ketat.
  • Baca masukan sebagai — deteksi otomatis, atau paksa satu dokumen JSON atau JSON Lines.
  • Keluaran — 2 spasi, 4 spasi, tab, atau diperkecil, dengan baris baru di akhir sebagai opsi.
  • Unduh dan salin — simpan dokumen terurut, atau salin ke papan klip. Pengguna Pro bisa mengunduh satu kumpulan penuh sebagai satu arsip.

Pertanyaan yang sering diajukan

Bagaimana pengurutan kunci JSON bekerja?

Alat ini membaca JSON Anda, menentukan letak setiap kunci dan setiap nilai di dalam teks, lalu menulis ulang dokumen dengan anggota tiap objek dalam urutan yang Anda minta. Karena bekerja pada teks dan bukan pada salinan hasil parsing, nilai dibawa tanpa perubahan dan hanya urutan serta tata letaknya yang baru. Hasilnya adalah JSON valid yang bisa Anda unduh atau salin.

Apakah objek bersarang juga diurutkan?

Ya, secara bawaan. Pengurutan bersifat rekursif: setiap objek pada kedalaman berapa pun kuncinya diurutkan, termasuk objek di dalam larik. Jika hanya tingkat terluar yang ingin disentuh, setel Kedalaman ke Hanya tingkat teratas, atau pilih jumlah tingkat. Larik tidak dihitung sebagai tingkat, sehingga Hanya tingkat teratas pada daftar rekaman akan mengurutkan kunci di dalam setiap rekaman.

Apakah elemen larik diurutkan ulang?

Tidak, kecuali Anda meminta. Posisi dalam larik membawa makna, jadi secara bawaan hanya kunci objek yang berpindah. Dua pengaturan opsional mengubah itu: satu mengurutkan larik yang seluruh elemennya nilai sederhana, satu lagi mengurutkan daftar objek menurut properti yang Anda sebut, misalnya id. Keduanya mati sampai Anda menyalakannya, dan keduanya membiarkan larik yang tidak persis cocok dengan aturan.

Apakah pengurutan mengubah nilai saya?

Tidak. Nilai disalin langsung dari berkas Anda, karakter demi karakter. Ini lebih penting daripada kedengarannya: alat yang mem-parsing JSON lalu menyerialisasi ulang mengubah 12345678901234567890 menjadi 12345678901234567000, menulis ulang 1.0 menjadi 1 dan 1e5 menjadi 100000, serta menulis ulang karakter ber-escape. Tidak satu pun terjadi di sini, jadi berkas terurut hanya berbeda dari aslinya pada urutan kunci dan spasi.

Apa yang terjadi pada kunci duplikat?

Duplikat dipertahankan dan dihitung. Sebagian besar alat JSON diam-diam membuang semuanya kecuali yang terakhir, karena parser yang mereka pakai menggabungkannya sebelum alat itu melihatnya. Di sini kedua anggota bertahan dan muncul berdampingan pada hasil. Jika Anda lebih suka menghapusnya, setel Kunci duplikat ke Pertahankan yang pertama atau Pertahankan yang terakhir, dan alat akan melaporkan berapa banyak yang dihapus.

Bisakah saya menaruh kunci tertentu di atas?

Bisa. Buka Lanjutan dan daftarkan di Sematkan kunci ini di atas, dipisahkan koma. Kunci itu muncul sesuai urutan yang Anda tulis, di atas segalanya, pada setiap tingkat dokumen. Tanda bintang di akhir mencocokkan awalan, jadi x-* menyematkan semua bidang ekstensi. Prasetel package.json adalah fitur ini yang sudah terisi dengan bidang yang biasanya mengawali berkas tersebut.

Apa itu urutan natural?

Urutan natural membaca deretan angka di dalam kunci sebagai bilangan, sehingga item2 mendahului item10. Urutan alfabetis biasa membandingkannya sebagai teks, di mana 1 mendahului 2 sehingga item10 muncul lebih dulu. Keduanya benar untuk keperluan berbeda: alfabetis adalah yang diharapkan sebagian besar alat diff dan skema, natural lebih mudah dibaca ketika kunci bernomor.

Bisakah membaca berkas dengan komentar, atau satu dokumen per baris?

Bisa keduanya. Aktifkan Terima komentar dan koma di akhir pada Lanjutan untuk membaca JSONC, varian yang dipakai tsconfig.json dan pengaturan VS Code; komentar tetap menempel pada kunci di bawahnya dan ikut berpindah. Berkas dengan satu dokumen JSON per baris, seperti ekspor .ndjson dan .jsonl, dideteksi otomatis dan setiap baris diurutkan sendiri-sendiri.

Apakah data JSON saya aman?

Ya. Seluruh pengurutan terjadi di perangkat Anda, jadi tidak ada yang diunggah dan tidak ada salinan dokumen Anda di tempat lain. Artinya Anda bisa dengan aman mengurutkan konfigurasi pribadi, respons API, dan data pelanggan, dan alat tetap bekerja tanpa jaringan setelah halaman dimuat.

Mengapa mengurutkan kunci JSON, dan sebesar apa berkasnya?

Urutan kunci tidak dijamin sama antar bahasa, pustaka, atau serializer, sehingga dua ekspor data yang sama bisa berbeda hanya pada urutannya dan memenuhi tinjauan kode dengan gangguan. Urutan yang stabil membuat diff menampilkan perubahan yang sebenarnya. Versi gratis mengurutkan satu dokumen hingga 25 MB sekali jalan dan mencakup semua fitur pengurutan; Pro menghapus batas ukuran sampai sebatas kemampuan perangkat Anda, mengurutkan hingga 20 dokumen sekaligus, dan mengembalikannya sebagai satu arsip.

4.8dari 5

dari 68 penilaian

Beri nilai alat ini

Ketuk bintang — hanya sebentar