237 of 264 menu

Object.assign-metodi

Object.assign-metodi kopioi lähdeobjektin ominaisuudet ja arvot, palauttaen uuden objektin. Metodin ensimmäisessä parametrissa me määritämme kohdeobjektin, johon kopioimme, ja toisessa - määritämme objektit, jotka on kopioitava.

Syntaksi

Object.assign(minne kopioida, objektit);

Esimerkki

Luodaan uusi objekti lähteestä:

let obj = {'a': 1, 'b': 2, 'c': 3}; let newObj = Object.assign({}, obj); console.log(newObj);

Koodin suorituksen tulos:

{a: 1, b: 2, c: 3}

Esimerkki

Luodaan nyt uusi objekti useista lähteistä listaamalla ne parametrina pilkulla erotettuna:

let obj1 = {'a': 1, 'b': 2}; let obj2 = {'c': 3, 'd': 4}; let newObj = Object.assign({}, obj1, obj2); console.log(newObj);

Koodin suorituksen jälkeen näemme, että kaksi lähdeobjektia yhdistyivät yhdeksi uudeksi objektiksi:

{a: 1, b: 2, c: 3, d: 4}

Esimerkki

Myös Object.assign-metodia voidaan käyttää uuden taulukon saamiseksi, sillä taulukko tyypiltään kuuluu myös objekteihin. Luodaan uusi taulukko kopioimalla alkiot lähteestä:

let arr = [1, 2, 3, 4]; let newArr = Object.assign([], arr); console.log(newArr);

Koodin suorituksen tulos:

[1, 2, 3, 4]

Esimerkki

Käytettäessä Object.assign-metodia täytyy kiinnittää huomiota syntaksiin. Esimerkiksi, jos et lisää ensimmäiseen parametriin kohdeobjektia, vaan jätät vain kopioitavan objektin, niin se palautetaan takaisin:

let obj = {1:'a', 2: 'b', 3: 'c'}; let newObj = Object.assign(obj); console.log(newObj === obj);

Koodin suorituksen tulos:

true

Katso myös

  • metodi Object.keys,
    joka palauttaa taulukon objektin ominaisuuksista
  • metodi Object.values,
    joka palauttaa taulukon objektin arvoista
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää