Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core für Entwickler > 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.