Object.assign ක්‍රමය

Object.assign ක්‍රමය මූලාශ්‍ර වස්තුවේ ගුණාංග සහ අගයන් පිටපත් කර, එම අතරතුර නව වස්තුවක් ආපසු ලබා දෙයි. ක්‍රමයේ පළමු පරාමිතියේදී අපි පිටපත් කිරීම සඳහා ඉලක්ක කරන ලක්ෂ්‍ය වස්තුව නියම කරමු, දෙවන පරාමිතියේදී - පිටපත් කළ යුතු වස්තු සඳහන් කරමු.

වාක්‍ය රචනය

javascriptObject.assign(කොහෙද පිටපත් කරන්නේ, වස්තූන්);

උදාහරණය

අපි මූලාශ්‍රයෙන් නව වස්තුවක් ලබා ගනිමු:

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

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

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

උදාහරණය

දැන් අපි නව වස්තුවක් ලබා ගනිමු කිහිපයක් මූලාශ්‍ර වලින්, ඒවා පරාමිතිය තුළ කොමාවකින් වෙන් කර දක්වමින්:

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

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

කේතය ක්‍රියාත්මක කිරීමෙන් පසු අපට පෙනෙනු ඇත, මූලාශ්‍ර වස්තු දෙක එක් නව වස්තුවකට ඒකාබද්ධ වී ඇති බව:

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

උදාහරණය

එසේම Object.assign ක්‍රමය නව අරාවක් ලබා ගැනීම සඳහා භාවිතා කළ හැකිය, මන්ද අරාව එහි වර්ගය අනුව ද වස්තූන්ට අයත් වේ. අපි නව අරාවක් සාදමු, මූලද්‍රව්‍ය පිටපත් කරගනිමින් මූලාශ්‍රයෙන්:

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

console.log(newArr);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[1, 2, 3, 4]

උදාහරණය

Object.assign ක්‍රමය භාවිතා කිරීමේදී වාක්‍ය රචනයට අවධානයෙන් පිළිපැදිය යුතුය. උදාහරණයක් ලෙස, එකතු නොකරන්නේ නම් පළමු පරාමිතියට ඉලක්කගත වස්තුව, නමුත් තබන්න පිටපත් කළ හැකි වස්තුව පමණක් නම්, එය නැවත ලැබෙනු ඇත:

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

console.log(newObj === obj);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascripttrue

මෙයද බලන්න

  • Object.keys ක්‍රමය,
    එය වස්තුවේ ගුණාංගවලින් සමන්විත අරාවක් ආපසු ලබා දෙයි
  • Object.values ක්‍රමය,
    එය වස්තුවේ අගයන්ගෙන් සමන්විත අරාවක් ආපසු ලබා දෙයි