JavaScript: मान द्वारा या संदर्भ द्वारा पास? भ्रम को समझते हैं
सभी को नमस्कार! मैं JavaScript में नौसिखिया हूँ और समझ नहीं पा रहा हूँ कि फंक्शन में आर्गुमेंट्स पास करना वास्तव में कैसे काम करता है। कुछ लेखों में लिखा है कि JS सब कुछ मान द्वारा पास करता है, दूसरों में कहा गया है कि ऑब्जेक्ट्स संदर्भ द्वारा पास होते हैं। मैंने एक सरल कोड लिखा जिसने मुझे पूरी तरह से भ्रमित कर दिया।\n\nयहाँ एक उदाहरण है:\n\n```javascript\nfunction changeValue(x) {\n x = 10;\n console.log('फंक्शन के अंदर:', x);\n}\n\nlet a = 5;\nchangeValue(a);\nconsole.log('फंक्शन के बाद:', a); // 5 — सब स्पष्ट है, संख्या नहीं बदली\n```\n\nयह समझ में आता है — प्रिमिटिव मान द्वारा पास होता है। लेकिन जब मैं ऑब्जेक्ट के साथ प्रयास करता हूँ:\n\n```javascript\nfunction changeObject(obj) {\n obj.name = 'नया नाम';\n}\n\nlet user = { name: 'पुराना नाम' };\nchangeObject(user);\nconsole.log(user.name); // 'नया नाम' — ऑब्जेक्ट बदल गया! तो यह