Metode Object.assign

Metode Object.assign menyalin properti dan nilai objek sumber, sambil mengembalikan objek baru. Pada parameter pertama metode kita tentukan objek target, tempat kita menyalin, dan pada parameter kedua - tentukan objek-objek yang perlu disalin.

Sintaksis

javascriptObject.assign(tempat menyalin, objek-objek);

Contoh

Mari kita dapatkan objek baru dari objek sumber:

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

Hasil eksekusi kode:

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

Contoh

Sekarang mari kita dapatkan objek baru dari beberapa sumber, dengan mendaftarkannya dalam parameter dipisahkan koma:

javascriptlet obj1 = {'a': 1, 'b': 2};
let obj2 = {'c': 3, 'd': 4};

let newObj = Object.assign({}, obj1, obj2);
console.log(newObj);

Setelah kode dieksekusi kita akan melihat bahwa dua objek sumber telah bergabung menjadi satu objek baru:

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

Contoh

Metode Object.assign juga dapat digunakan untuk mendapatkan array baru, karena array berdasarkan tipenya juga termasuk objek. Mari kita buat array baru, dengan menyalin elemen dari sumber:

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

console.log(newArr);

Hasil eksekusi kode:

javascript[1, 2, 3, 4]

Contoh

Saat menggunakan metode Object.assign perlu berhati-hati dalam mematuhi sintaksis. Misalnya, jika tidak menambahkan objek target pada parameter pertama, tetapi hanya menyisakan objek yang akan disalin, maka objek itulah yang akan dikembalikan:

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

console.log(newObj === obj);

Hasil eksekusi kode:

javascripttrue

Lihat juga

  • metode Object.keys,
    yang mengembalikan array dari properti objek
  • metode Object.values,
    yang mengembalikan array dari nilai objek