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

JavaScript में ऑब्जेक्ट क्या है और प्रॉपर्टी कैसे एक्सेस करें?


JavaScript ऑब्जेक्ट और प्रॉपर्टी एक्सेस

JavaScript में लगभग सब कुछ ऑब्जेक्ट है (प्रिमिटिव्स के अलावा: null, undefined, string, number, boolean, symbol, bigint)। ऑब्जेक्ट्स की-वैल्यू पेयर्स का संग्रह होते हैं।

ऑब्जेक्ट बनाना

<script>
  // ऑब्जेक्ट लिटरल
  var person = {
    "name": "रमेश",
    "age": 30,
    "family": [{"mother": "गीता", "father": "राव"}],
    "city": "बर्लिन"
  };
</script>

प्रॉपर्टी एक्सेस के दो तरीके

1. डॉट नोटेशन (.)

सरल, वैध आइडेंटिफायर नामों के लिए।

<html> <body> <script>
  var person = {name: "रमेश", age: 30, city: "बर्लिन"};
  
  console.log(person.name);   // "रमेश"
  console.log(person.age);    // 30
  console.log(person.city);   // "बर्लिन"
</script> </body> </html>

आउटपुट

रमेश
30
बर्लिन

2. ब्रैकेट नोटेशन ([])

डायनामिक कीज़, स्पेशल कैरेक्टर्स, रिजर्व्ड वर्ड्स के लिए।

<html> <body> <script>
  var person = {
    "name": "रमेश",
    "age": 30,
    "family": [{"mother": "गीता", "father": "राव"}],
    "city": "बर्लिन"
  };
  
  // नेस्टेड प्रॉपर्टी एक्सेस
  var motherName = person.family[0].mother;
  document.write(motherName);  // "गीता"
  
  // ब्रैकेट नोटेशन
  var city = person["city"];
  document.write(city);  // "बर्लिन"
  
  // डायनामिक की
  var prop = "age";
  console.log(person[prop]);  // 30
</script> </body> </html>

आउटपुट

गीता
बर्लिन

नेस्टेड एक्सेस पैटर्न्स

<script>
  var data = {
    user: {
      profile: {
        address: {
          city: "दिल्ली"
        }
      }
    }
  };
  
  // चेनिंग (रिस्की - बीच में null/undefined होने पर एरर)
  var city = data.user.profile.address.city;
  
  // सुरक्षित: ऑप्शनल चेनिंग (ES2020)
  var city = data.user?.profile?.address?.city;
  
  // या लॉडश _.get / फंक्शन
  function getPath(obj, path) {
    return path.split('.').reduce((o, k) => (o || {})[k], obj);
  }
</script>

महत्वपूर्ण अंतर

पहलूडॉट नोटेशनब्रैकेट नोटेशन
पठनीयताबेहतरथोड़ी कम
डायनामिक कीज़नहींहाँ
स्पेशल कैरेक्टर्सनहींहाँ
रिजर्व्ड वर्ड्ससमस्या हो सकती हैसुरक्षित

प्रॉपर्टी मौजूदगी जांचना

<script>
  var obj = {a: 1, b: undefined};
  
  'a' in obj;           // true (प्रोटोटाइप चेन सहित)
  obj.hasOwnProperty('a'); // true (केवल ऑन प्रॉपर्टी)
  obj.a !== undefined;  // true लेकिन b के लिए false (भले ही b मौजूद हो)
  
  // ES2022: Object.hasOwn()
  Object.hasOwn(obj, 'a');  // true
</script>
  1. JavaScript में ऑब्जेक्ट कैसे बनाएं और उसकी प्रॉपर्टीज एक्सेस करें? JavaScript में ऑब्जेक्ट कैसे बनाएं और उसकी प्रॉपर्टीज एक्सेस करें?

    JavaScript में ऑब्जेक्ट बनाने और उसकी प्रॉपर्टीज एक्सेस करने का कोड निम्न है -उदाहरण<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <tit

  1. - JavaScript में ऑब्जेक्ट पर इटरेट करके फाल्सी प्रॉपर्टी हटाना

    मान लीजिए हमारे पास ऐसा JSON ऑब्जेक्ट है:const obj = {    a: {       someKey: {          propOne: ,          enabled: true       }    },    b: {       someKey: {    

  1. - JavaScript में कॉम्प्लेक्स ऑब्जेक्ट को id प्रॉपर्टी द्वारा खोजें

    मान लीजिए हमारे पास इस तरह का कॉम्प्लेक्स JSON ऑब्जेक्ट है: const obj = { id: 0001, fieldName: sample1, fieldValue: 0001, subList: [ { id: 1001, fieldName: Sample Child 1, fieldValue: 1001, subList: [] }, {