Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

जावास्क्रिप्ट में वस्तुओं की प्रतिलिपि बनाने की विभिन्न तकनीकें

<घंटा/>

किसी भी भाषा में वस्तुओं को कॉपी करने के दो तरीके हैं, डीप कॉपी और उथली कॉपी।

शालो कॉपी और डीप कॉपी भाषा अज्ञेयवादी हैं। उथली प्रतियां यथासंभव कम डुप्लिकेट करें। संग्रह की उथली प्रति संग्रह संरचना की एक प्रति है, न कि तत्व। उथली प्रतिलिपि के साथ, दो संग्रह अब अलग-अलग तत्वों को साझा करते हैं।

उदाहरण

let innerObj ={a:'b', c:'d'}let obj ={x:"test", y:innerObj}// एक उथली कॉपी बनाएं। copyObj =Object.assign({}, obj);// copyObj और obj के प्रोप y दोनों अब एक ही innerObj को संदर्भित करते हैं। इसमें कोई भी परिवर्तन दिखाई देगा.innerObj.a ="test"console.log(obj)console.log(copyObj)

आउटपुट

यह आउटपुट देगा -

{ x:'test', y:{a:'test', c:'d' } }{ x:'test', y:{a:'test', c:'d'} } 

ध्यान दें कि उथली प्रतियां पुनरावर्ती रूप से क्लोन नहीं बनाती हैं। यह सिर्फ शीर्ष स्तर पर करता है।

डीप कॉपी सब कुछ डुप्लिकेट करती है। संग्रह की एक गहरी प्रति दो संग्रह हैं जिनमें मूल संग्रह के सभी तत्वों को क्लोन किया गया है।

उदाहरण

let innerObj ={a:'b', c:'d'}let obj ={x:"test", y:innerObj}// एक डीप कॉपी बनाएं। copyObj =JSON.parse(JSON.stringify करें) (obj))// copyObj और obj के प्रोप y दोनों अब एक ही innerObj को संदर्भित करते हैं। इसमें कोई भी परिवर्तन दिखाई देगा.innerObj.a ="test"console.log(obj)console.log(copyObj)

आउटपुट

यह आउटपुट देगा -

{ x:'test', y:{a:'test', c:'d' } }{ x:'test', y:{a:'b', c:'d'} } 
  1. जावास्क्रिप्ट में स्टेटमेंट के लिए... के बारे में बताएं?

    for…in लूप सभी ऑब्जेक्ट गुणों के माध्यम से लूप करता है। जावास्क्रिप्ट में for..in स्टेटमेंट को लागू करने वाला कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width

  1. जावास्क्रिप्ट में वस्तुओं की समानता की व्याख्या करें।

    जावास्क्रिप्ट में आदिम जैसे स्ट्रिंग, संख्या, बूलियन आदि की तुलना उनके मूल्यों से की जाती है जबकि वस्तुओं (मूल या कस्टम) की तुलना उनके संदर्भ से की जाती है। संदर्भ द्वारा तुलना करने का अर्थ है कि दो या दो से अधिक वस्तु स्मृति में एक ही स्थान की ओर इशारा करती है या नहीं। जावास्क्रिप्ट में वस्तुओं की

  1. जावास्क्रिप्ट में वस्तुओं के लिए कम करने की विधि कैसे लागू करें?

    जावास्क्रिप्ट में वस्तुओं के लिए कम विधि लागू करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <tit