Methode Object.assign
De methode Object.assign kopieert eigenschappen en waarden van het bronobject,
en retourneert een nieuw object. In de eerste parameter van de methode
geven we het doelobject op, waarin we kopiëren,
en in de tweede - geven we de objecten op die gekopieerd moeten worden.
Syntaxis
Object.assign(waar naartoe te kopiëren, objecten);
Voorbeeld
Laten we een nieuw object verkrijgen uit het bronobject:
let obj = {'a': 1, 'b': 2, 'c': 3};
let newObj = Object.assign({}, obj);
console.log(newObj);
Resultaat van het uitvoeren van de code:
{a: 1, b: 2, c: 3}
Voorbeeld
Laten we nu een nieuw object verkrijgen uit meerdere bronobjecten, door ze in de parameter gescheiden door komma's op te sommen:
let obj1 = {'a': 1, 'b': 2};
let obj2 = {'c': 3, 'd': 4};
let newObj = Object.assign({}, obj1, obj2);
console.log(newObj);
Na het uitvoeren van de code zullen we zien dat de twee bronobjecten zijn samengevoegd tot één nieuw object:
{a: 1, b: 2, c: 3, d: 4}
Voorbeeld
De methode Object.assign
kan ook worden toegepast om een nieuwe array te verkrijgen,
aangezien een array qua type ook tot objecten behoort.
Laten we een nieuwe array maken, door elementen uit
het bronobject te kopiëren:
let arr = [1, 2, 3, 4];
let newArr = Object.assign([], arr);
console.log(newArr);
Resultaat van het uitvoeren van de code:
[1, 2, 3, 4]
Voorbeeld
Bij het gebruik van de methode Object.assign
moet de syntaxis zorgvuldig worden gevolgd.
Als men bijvoorbeeld niet
in de eerste parameter het doelobject toevoegt, maar alleen
het te kopiëren object laat staan, dan wordt datzelfde object geretourneerd:
let obj = {1:'a', 2: 'b', 3: 'c'};
let newObj = Object.assign(obj);
console.log(newObj === obj);
Resultaat van het uitvoeren van de code:
true
Zie ook
-
methode
Object.keys,
die een array met eigenschappen van een object retourneert -
methode
Object.values,
die een array met waarden van een object retourneert