237 of 264 menu

Metoda Object.assign

Metoda Object.assign kopiuje właściwości i wartości obiektu źródłowego, zwracając przy tym nowy obiekt. W pierwszym parametrze metody ustawiamy obiekt docelowy, do którego kopiujemy, a w drugim - wskazujemy obiekty, które należy skopiować.

Składnia

Object.assign(gdzie kopiować, obiekty);

Przykład

Otrzymajmy nowy obiekt ze źródłowego:

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

Wynik wykonania kodu:

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

Przykład

A teraz otrzymajmy nowy obiekt z kilku źródłowych, wymieniając je w parametrze przez przecinek:

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

Po wykonaniu kodu zobaczymy, że dwa obiekty źródłowe połączyły się w jeden nowy obiekt:

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

Przykład

Również metodę Object.assign można stosować do otrzymania nowej tablicy, ponieważ tablica według swojego typu również należy do obiektów. Stwórzmy nową tablicę, kopiując elementy z źródłowej:

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

Wynik wykonania kodu:

[1, 2, 3, 4]

Przykład

Przy użyciu metody Object.assign trzeba uważnie przestrzegać składni. Na przykład, jeśli nie dodamy w pierwszym parametrze obiektu docelowego, a pozostawimy tylko obiekt do skopiowania, to on i zwróci się z powrotem:

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

Wynik wykonania kodu:

true

Zobacz też

  • metoda Object.keys,
    która zwraca tablicę z właściwości obiektu
  • metoda Object.values,
    która zwraca tablicę z wartości obiektu
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć