Сортувальник ключів JSON (стабільний порядок ключів для чистіших diff'ів)

Автоматично стандартизуйте порядок ключів JSON, щоб спростити рев'ю й порівняння.

Оберіть усі рівні або лише верхній рівень. Порядок елементів масивів зберігається.

Чистіші diff'и завдяки фіксованому порядку ключів
Порядок масивів зберігається
Форматування відступів в одному запуску
Уся обробка виконується на цій сторінці (нічого не завантажується).

Інструмент

Сортуйте й форматуйте JSON за один крок, а потім копіюйте або завантажуйте результат.

Скорочення: Ctrl / Cmd + Enter для запуску

Приклад (до / після)

Вхід

{"b":1,"a":{"d":4,"c":3},"arr":[{"y":2,"x":1},3]}

Сортування на всіх рівнях (2 пробіли)

{
  "a": {
    "c": 3,
    "d": 4
  },
  "arr": [
    {
      "x": 1,
      "y": 2
    },
    3
  ],
  "b": 1
}

Сортування лише верхнього рівня

Ключі верхнього рівня перебудовуються в a, arr, b, тоді як порядок ключів усередині "a" залишається таким, як був введений.

Як користуватися

  1. Вставте JSON у поле введення.
  2. Оберіть область сортування (усі рівні/лише верхній рівень) і відступ.
  3. Натисніть Sort and Format, а потім скопіюйте результат.

Що можна робити

  • Сортувати ключі об'єктів за зростанням або спаданням
  • Обирати всі рівні або лише верхній рівень
  • Зберігати порядок елементів масиву без змін
  • Копіювати, завантажувати й міняти місцями вхід/вихід

Специфікація (масиви, вкладеність, числові ключі)

  • Ключі об'єктів сортуються лексикографічно з вибором області (усі рівні або лише верхній рівень).
  • Порядок елементів масиву зберігається.
  • Варіанти відступів: 2 пробіли, 4 пробіли, табуляція або мініфікований вивід в один рядок.
  • Якщо введення не є коректним JSON, показується помилка, а вивід не оновлюється.
  • Ключі, схожі на цілі числа, можуть відображатися в числовому порядку залежно від правил переліку властивостей JavaScript.

Часті запитання

Чи можна сортувати також вкладені об'єкти?

Так. Можна вибрати всі рівні або лише верхній рівень.

Що відбувається з масивами?

Порядок елементів масиву зберігається. Об'єкти всередині масивів сортуються відповідно до вибраної області.

Чи можна зберегти початкові відступи?

Ні. Форматування введення не зберігається. Вивід перебудовується з вибраним стилем відступів.

Чи підтримуються коментарі JSON5 або коми в кінці?

Ні. Цей інструмент орієнтований лише на стандартний JSON.

Де обробляються дані?

Усе виконується локально у вашому браузері. Ваше введення не надсилається на сервер.