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методи,
объектнинг қийматларидан таркиб топган массавни қайтаради