Kategorie: Entwicklung

JSON Deep Merge

Eigene IdeeTool fehlt?

Zwei JSON-Objekte oder -Arrays mit wählbarer Array-Strategie zusammenführen

Führen Sie zwei JSON-Objekte oder -Arrays tief zusammen: verschachtelte Objekte werden Schlüssel für Schlüssel zusammengeführt, und Arrays werden je nach Wahl verkettet, ersetzt oder vereinigt. Läuft vollständig in Ihrem Browser.

Ergebnis
{
  "name": "Ada",
  "tags": [
    "engineer",
    "mathematician"
  ],
  "settings": {
    "theme": "light",
    "notifications": true
  },
  "role": "Lead"
}

Alles auf dieser Seite wird in Ihrem Browser verarbeitet. Nichts wird hochgeladen.

Wozu dieses Werkzeug dient

Ein flacher Merge führt nur die Top-Level-Schlüssel eines Objekts zusammen, sodass verschachtelte Einstellungen in JSON B das gesamte verschachtelte Objekt aus JSON A stillschweigend überschreiben. Dieses Tool führt stattdessen rekursiv zusammen: übereinstimmende verschachtelte Objekte werden Schlüssel für Schlüssel vereint, und Arrays folgen der gewählten Strategie, sodass ein Konfigurations- oder Einstellungsobjekt mit mehreren Verschachtelungsebenen so zusammengeführt wird, wie man es erwartet.

So funktioniert es

  1. Fügen Sie das Basisdokument in JSON A und die Überschreibungen in JSON B ein.
  2. Wählen Sie, wie Arrays kombiniert werden sollen: beide verketten, das Array aus A durch das aus B ersetzen oder die Vereinigung beider bilden.
  3. Lesen Sie das zusammengeführte Ergebnis, wobei die Werte aus JSON B überall gewinnen, wo beide Dokumente denselben Schlüssel teilen.

Datenschutz

Dieses Werkzeug läuft vollständig in Ihrem Browser. Ihre Eingabe wird nie hochgeladen, gespeichert oder weitergegeben – beim Schließen des Tabs ist sie weg.

Häufig gestellte Fragen

Was passiert, wenn beide Dokumente denselben Schlüssel haben?
Sind beide Werte Objekte, werden sie rekursiv zusammengeführt; sind beide Arrays, werden sie nach der gewählten Array-Strategie kombiniert; ansonsten gewinnt der Wert aus JSON B.
Was macht 'Vereinigung' bei Arrays?
Es behält jedes Element aus JSON A und hängt Elemente aus JSON B an, deren serialisierter Wert noch nicht im kombinierten Array vorkommt, sodass keine doppelten Einträge entstehen.
Kann ich zwei JSON-Arrays statt zwei Objekte zusammenführen?
Ja. Sind sowohl JSON A als auch JSON B Arrays, werden sie direkt anhand der Array-Strategie zusammengeführt, ohne dass sie in Objekte verpackt werden müssen.