Kaedah Object.assign
Kaedah Object.assign menyalin sifat dan nilai objek sumber,
sambil mengembalikan objek baharu. Dalam parameter pertama kaedah
kita tentukan objek sasaran, yang mana kita salin ke dalamnya,
dan dalam parameter kedua - kita nyatakan objek yang perlu disalin.
Sintaks
Object.assign(tempat untuk salin, objek-objek);
Contoh
Mari dapatkan objek baharu daripada objek sumber:
let obj = {'a': 1, 'b': 2, 'c': 3};
let newObj = Object.assign({}, obj);
console.log(newObj);
Keputusan pelaksanaan kod:
{a: 1, b: 2, c: 3}
Contoh
Sekarang mari dapatkan objek baharu daripada beberapa sumber, dengan menyenaraikannya dalam parameter dipisahkan oleh koma:
let obj1 = {'a': 1, 'b': 2};
let obj2 = {'c': 3, 'd': 4};
let newObj = Object.assign({}, obj1, obj2);
console.log(newObj);
Selepas pelaksanaan kod kita akan lihat, bahawa dua objek sumber telah bergabung menjadi satu objek baharu:
{a: 1, b: 2, c: 3, d: 4}
Contoh
Kaedah Object.assign
juga boleh digunakan untuk mendapatkan array baharu,
kerana array mengikut jenisnya juga tergolong dalam objek.
Mari buat array baharu dengan menyalin elemen daripada
array sumber:
let arr = [1, 2, 3, 4];
let newArr = Object.assign([], arr);
console.log(newArr);
Keputusan pelaksanaan kod:
[1, 2, 3, 4]
Contoh
Apabila menggunakan kaedah Object.assign
perlu berhati-hati dengan sintaks.
Sebagai contoh, jika tidak menambahkan
objek sasaran dalam parameter pertama, tetapi hanya meninggalkan
objek yang disalin, maka ia akan dikembalikan semula:
let obj = {1:'a', 2: 'b', 3: 'c'};
let newObj = Object.assign(obj);
console.log(newObj === obj);
Keputusan pelaksanaan kod:
true
Lihat juga
-
kaedah
Object.keys,
yang mengembalikan array daripada sifat objek -
kaedah
Object.values,
yang mengembalikan array daripada nilai objek