Объединение JSON онлайн

Локальная обработка
app.merge.view

Данные также можно передать через #data={"name":"Ada"} или #url=... После чтения параметры сразу удаляются из адресной строки.

Как пользоваться

Соберите несколько JSON в один. Удобно накладывать пользовательский конфиг на значения по умолчанию или склеивать несколько ответов API. Правила объединения выполняются в браузере. Глубокое слияние сохраняет вложенные поля с обеих сторон; перекрытие верхнего уровня целиком заменяет одноимённый ключ.

Глубокое объединение

Вложенные объекты сливаются по ключам, а не заменяются целиком. Например, theme.color из значений по умолчанию и theme.font из пользовательского конфига могут остаться вместе.

Подходит для сценария «базовый конфиг + перекрытие окружения».

Конфликты видны

Если на одном пути есть значения с обеих сторон, действует выбранная стратегия. Если не уверены, сначала посмотрите конфликтные пути в Diff.

Для массивов можно выбрать склейку, перекрытие или удаление дублей — не считайте, что по умолчанию идёт глубокое слияние по индексам.

В паре с Diff

Сначала Diff, затем объединение — меньше риск случайно затереть данные. Результат можно снова отформатировать или отсортировать перед сохранением.

Пустая сторона считается пустым объектом — удобно вставить только инкремент.

Пример

Базовый конфиг
{
  "theme": "light",
  "limits": { "maxSizeMB": 2 }
}
После перекрытия (пример)
{
  "theme": "dark",
  "limits": { "maxSizeMB": 2, "debounceMs": 300 }
}
Как объединяются массивы?

По опциям инструмента: склейка, перекрытие или удаление дублей. Не предполагайте глубокое слияние по индексам.

Загружаются ли файлы?

Нет. Даже несколько фрагментов текста объединяются только в памяти на этом устройстве.

Чем перекрытие верхнего уровня отличается от глубокого объединения?

Перекрытие верхнего уровня целиком заменяет одноимённый ключ объектом справа; глубокое объединение заходит во вложенные объекты и продолжает слияние.

Можно ли объединить больше двух копий?

Сейчас два столбца. Для трёх и больше сначала объедините первые две, затем результат с третьей.

Рекомендуемый процесс

  1. Слева вставьте значения по умолчанию / старые данные, справа — перекрытие / новые.
  2. Выберите глубокое объединение, перекрытие верхнего уровня или сборку в массив.
  3. Если есть массивы, отдельно выберите склейку, перекрытие или удаление дублей.
  4. Нажмите «Объединить», проверьте результат и скопируйте; при сомнениях сначала сравните исходники в Diff.

Для конфигов чаще подходит глубокое объединение; для флагов «последняя запись побеждает» — перекрытие верхнего уровня.