JavaScript में ऑब्जेक्ट्स का रेफरेंस द्वारा पासिंग
ऐरे और ऑब्जेक्ट अन्य आदिम डेटा प्रकारों से कुछ भिन्न होते हैं। अंतर यह है कि वह चर, जो एक ऐरे रखता है, वास्तव में उसे नहीं रखता, बल्कि केवल उसकी ओर संकेत करता है।
व्यवहार में इसका मतलब है कि किसी ऑब्जेक्ट को दूसरे चर में लिखने पर, दोनों चर एक ही ऑब्जेक्ट की ओर संकेत करेंगे। आइए व्यवहार में कोशिश करते हैं। मान लीजिए हमारे पास निम्नलिखित ऑब्जेक्ट है:
javascriptlet obj1 = {a: 1, b: 2, c: 3};
इसे एक चर से दूसरे चर में नियत करें:
javascriptlet obj2 = obj1;
अब चरों में से एक को बदलें:
javascriptobj2.a = '!';
परिणामस्वरूप परिवर्तन दूसरे चर में भी दिखाई देंगे:
javascriptconsole.log(obj1); // {a: '!', b: 2, c: 3}
Задание 1
कोड चलाए बिना निर्धारित करें कि कंसोल में क्या प्रिंट होगा:
javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
console.log(arr2);
Задание 2
कोड चलाए बिना निर्धारित करें कि कंसोल में क्या प्रिंट होगा:
javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[1] = 'b';
console.log(arr1);
Задание 3
कोड चलाए बिना निर्धारित करें कि कंसोल में क्या प्रिंट होगा:
javascriptlet arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[0] = 'b';
console.log(arr2);