Der Ein oder Andere wird im Laufe seiner Javascript Entwicklung an einen Punkt gekommen sein zwei JavaScript Objekte zusammenzuführen. Quasi „mergen“. Ein Fallbeispiel könnte sein, ihr habt eine JS Klasse mit einer Membervariablen vom Typ „Object“ die Texte im key-value beinhaltet.
myTxts = {
welcome: ‘Hello World‘,
bye: ‘Tschüßi Kowski‘
}
Nun wollt ihr statt „Tschüßi Kowski“ doch lieber Auf Wiedersehen ausgeben. Eine Möglichkeit ihr ändert es in der Klasse. Die andere ihr nutzt einen Setter. Also implemntiert ihr in eure Klasse folgendes:
...
set setMyTxt(newTxt) {
return this.myTxt = {...this.myTxt, ...newTxt};
}
...
oder für die die noch ES6 nutzen wollen/müssen
...
set setMyTxt(newTxt) {
return this.myTxt = Object.assign({}, this.myTxt, newTxt};
}
...
Oder ihr müsst, wollt mit ES5 oder noch älter arbeiten
...
set setMyTxt(newTxt) {
for (let key in newTxt) {
this.myTxt[key] = newTxt[key];
}
…
Und so nutzt man den neuen Setter dann um zum Beispiel den bye Wert in eine nettere Formulierung anzupassen.
myClass = new MyClass();
myClass.setMyTxt = {bye: ‘Auf Wiedersehen‘}