ऑब्जेक्ट.असाइन ()
इस विधि का उपयोग एक या अधिक स्रोत ऑब्जेक्ट को लक्ष्य ऑब्जेक्ट में कॉपी करने के लिए किया जाता है। यह गेटर्स और सेटर्स को आमंत्रित करता है क्योंकि यह स्रोत पर 'प्राप्त' और लक्ष्य पर 'सेट' दोनों का उपयोग करता है। यह लक्ष्य वस्तु लौटाता है जिसमें लक्ष्य वस्तु से कॉपी किए गए गुण और मूल्य होते हैं। यह विधि शून्य या अपरिभाषित स्रोत मानों पर नहीं फेंकती है।
वाक्यविन्यास
Object.assign(target, ...source objects);
इसमें स्रोत ऑब्जेक्ट लगते हैं और एक लक्ष्य वस्तु को पैरामीटर के रूप में और स्रोत वस्तुओं को लक्ष्य वस्तु में धकेलें और लक्ष्य वस्तु को प्रदर्शित करें।
उदाहरण-1
निम्न उदाहरण में, स्रोत ऑब्जेक्ट . के गुण "obj1 ", "obj2 ", और "obj3 " को लक्ष्य वस्तु में धकेल दिया गया "obj " और लक्षित वस्तु आउटपुट के रूप में लौटाया जाता है।
<html> <body> <script> var obj1 = { a: 10, b:20 }; var obj2 = { c: 30, d:40 }; var obj3 = { e: 50 }; var obj = Object.assign({}, obj1, obj2, obj3); document.write(JSON.stringify(obj)); </script> </body> </html>
आउटपुट
{"a":10,"b":20,"c":30,"d":40,"e":50}
उदाहरण-2
निम्न उदाहरण में, एकाधिक उदाहरण हैं कुछ गुणों . में से वस्तुओं की। इस मामले में विधि Object.assign() किसी संपत्ति का अंतिम निर्दिष्ट मूल्य लेता है। उदाहरण के लिए, सभी 3 वस्तुओं में "obj1 ", "obj2 ", और "obj3 संपत्ति 'c ' सामान्य और असाइन किए गए मान हैं जैसे क्रमशः 1,3 और 0। obj3 में संपत्ति 'c' का मान पहले से असाइन किए गए अन्य मानों को ओवरराइड करता है 1 और 3 . तो अगर हम आउटपुट को देखें, संपत्ति 'सी ' को मान 0 . के साथ असाइन किया गया है ।
<html> <body> <script> var obj1 = { a: 10, b:20, c:1 }; var obj2 = { b: 30, d:10, c:3 }; var obj3 = { e: 60, d:70, c:0 }; var obj = Object.assign({}, obj1, obj2, obj3); document.write(JSON.stringify(obj)); </script> </body> </html>
आउटपुट
{"a":10,"b":30,"c":0,"d":70,"e":60}