Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core JavaScript-API
Die Bibliothek lib/delta bietet Funktionen für das Vergleichen von Objekt-Strukturen. Mithilfe dieser JavaScript-Bibliothek vergleichen SIe Objekt-Strukturen mit der Funktion diff oder fügen die Werte der Funktion patch und dort aus dem Parameter delta mit den Werten aus dem Parameter source zusammen, um ein neues JavaScript-Objekt zu erhalten. Sie können dadurch, Änderungen zwischen Versionen von Daten verfolgen und Änderungen gezielt durchführen.
Diese Bibliothek binden Sie stets am Anfang eines Skripts ein:
let delta = require('/agorum/roi/customers/agorum.dev/js/lib/delta');
Die Funktion diff wird verwendet, um die Unterschiede (Deltas) zwischen zwei Objekte zu ermitteln. Sie können die Funktion etwa verwenden, um Änderungen von Variablen innerhalb eines Log-Eintrags zu protokollieren.
Syntax
diff(source, target);
Parameter
Parameter | Beschreibung | Pflicht |
---|---|---|
source | Definiert ein JavaScript-Objekt mit den Quelldaten. | ja |
target | Definiert ein JavaScript-Objekt mit den Zieldaten, die das System mit der source vergleicht. | ja |
Beispiel
let delta = require('/agorum/roi/customers/agorum.dev/js/lib/delta'); delta.diff( { name: 'Felix', age: 30, address: { city: 'Stuttgart', zip: '70374', }, }, { name: 'Felix', age: 31, address: { city: 'Hamburg', zip: '20148', }, } );
Rückgabewert
diff gibt ein Delta-Objekt zurück, das die Unterschiede zwischen dem Quell- und dem Zielobjekt darstellt. Identische Werte sind nicht im Zielobjekt enthalten.
In diesem Beispiel ist der Name daher nicht in den zurückgegebenen Daten enthalten.
{ "address" : { "zip" : "20148", "city" : "Hamburg" }, "age" : 31 }
Fügt die Werte aus dem Parameter delta mit den Werten aus dem Parameter source zusammen und liefert ein neues JavaScript-Objekt zurück.
Syntax
patch(source, delta);
Parameter
Parameter | Beschreibung | Pflicht |
---|---|---|
source | Definiert ein JavaScript-Objekt mit den Quelldaten. | ja |
delta | Definiert ein JavaScript-Objekt mit den Daten, die das System mit der source zusammengeführt. | ja |
Beispiel
let delta = require('/agorum/roi/customers/agorum.dev/js/lib/delta'); delta.patch( { name: 'Felix', age: 30, address: { city: 'Stuttgart', zip: '70374', }, }, { name: 'Felix', age: 31, address: { city: 'Hamburg', zip: '20148', }, } );
Rückgabewerte
Sie erhalten ein JavaScript-Objekt mit den zusammengeführten Werten:
{ "address" : { "zip" : "20148", "city" : "Hamburg" }, "name" : "Felix", "age" : 31 }
Verwendung
Diese Funktion verwenden Sie, wenn Sie die Werte von zwei JavaScript-Objekten zusammenführen möchten und bei Unterstrukturen nicht das gesamte Unterobjekt überschreiben, sondern die Werte aus delta einmischen möchten.
Exceptions
Zu dieser Funktion existieren keine Exceptions.