237 of 264 menu

Objekto metodas Object.assign

Metodas Object.assign nukopijuoja šaltinio objekto savybes ir reikšmes, grąžindamas naują objektą. Pirmame metodo parametre mes nurodome tikslinį objektą, į kurį kopijuojame, o antrame - nurodome objektus, kuriuos reikia nukopijuoti.

Sintaksė

Object.assign(kur kopijuoti, objektai);

Pavyzdys

Gaukime naują objektą iš šaltinio:

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

Kodo vykdymo rezultatas:

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

Pavyzdys

Dabar gaukime naują objektą iš kelių šaltinių, išvardindami juos parametre per kablelį:

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

Po kodo vykdymo pamatysime, kad du šaltiniai objektai susiliejo į vieną naują objektą:

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

Pavyzdys

Taip pat metodą Object.assign galima taikyti norint gauti naują masyvą, kadangi masyvas pagal savo tipą taip pat priskiriamas prie objektų. Gaukime naują masyvą, nukopijavę elementus iš šaltinio:

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

Kodo vykdymo rezultatas:

[1, 2, 3, 4]

Pavyzdys

Naudojant metodą Object.assign reikia atidžiai laikytis sintaksės. Pavyzdžiui, jei nepridėsime pirmame parametre tikslinio objekto, o paliksime tik kopijuojamą objektą, tai jis ir bus grąžintas atgal:

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

Kodo vykdymo rezultatas:

true

Taip pat žiūrėkite

  • metodas Object.keys,
    kuris grąžina masyvą iš objekto savybių
  • metodas Object.values,
    kuris grąžina masyvą iš objekto reikšmių
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti