237 of 264 menu

Метод Object.assign

Методът Object.assign копира свойства и стойности на изходния обект, връщайки при това нов обект. В първия параметър на метода ние задаваме целевия обект, в който копираме, а във втория - посочваме обектите, които трябва да бъдат копирани.

Синтаксис

Object.assign(къде да копираме, обекти);

Пример

Нека получим нов обект от изходния:

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

Резултат от изпълнението на кода:

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

Пример

А сега нека получим нов обект от няколко изходни, като ги изброим в параметъра чрез запетая:

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

След изпълнение на кода ще видим, че двата изходни обекта се слиха в един нов обект:

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

Пример

Също така методът Object.assign може да се прилага за получаване на нов масив, тъй като масивът по своя тип също се отнася към обекти. Нека направим нов масив, като копираме елементи от изходния:

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

Резултат от изпълнението на кода:

[1, 2, 3, 4]

Пример

При използване на метода Object.assign трябва внимателно да се придържаме към синтаксиса. Например, ако не добавим в първия параметър целевия обект, а оставим само копирания обект, то той ще бъде върнат обратно:

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

Резултат от изпълнението на кода:

true

Вижте също

  • метод Object.keys,
    който връща масив от свойства на обекта
  • метод Object.values,
    който връща масив от стойности на обекта
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне