Wie merge ich zwei Javascript Objekte

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‘}

Leave a Comment

Your email address will not be published. Required fields are marked *

*

*

Empfholende Artikel


Alphanumeric sorting of an array with objects according to the value of an object

June 30, 2022

Especially in the frontend it happens quite often that you want to sort an array, an array with objects according to a certain pattern. Javascript has very performant and nice functions. But you can use these functions not only in the frontend. If you write your backend with NodeJS you will also appreciate the array […]

JS reduce()

March 21, 2022

Man hat ein array und möchte zum Beispiel alle Zahlen im Array kumulieren. Mit der Javascript Array Function reduce() geht das ganz leicht.

Return days of a month in an array

March 14, 2022

You need all days of a certain month then you can use this function: getDaysInMonth = (month,year) => new Date(year, month, 0).getDate();console.log( […Array(getDaysInMonth(3, 2022)).keys()] ); Greets!

JS flat()

March 9, 2022

Es kommt schon mal vor das man geschachtelte arrays bekommt.Zum Beispiel: Man möchte aus einem geschachteltem Array alle Werte in einem Array sammeln. Mit der array Funktion flat() ist das kein Problem. Auch mehrstuffig verschachtelte Arrays kann man geradeziehen (flatten). Indem man der flat Funktion die Anzahl der verschachtelungen die aufgelöst werden sollen, mitgibt. Da […]

JS bind()

March 8, 2022

Ein einfaches besipiel um JS bind() function zu verdeutlichen:

Javascript – Fakultät berechnen

January 19, 2022

Ab und an braucht man das und nicht nur in der Kombinatorik. Wer es etwas übersichtlicher braucht (und dazu zähle ich mich auch) kann es auch in einer for schleife machen.