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

जावास्क्रिप्ट में डॉट नोटेशन स्ट्रिंग्स के साथ ऑब्जेक्ट गुणों को सुरक्षित रूप से सेट करना

<घंटा/>

आप किसी भी स्तर पर सुरक्षित रूप से गुण सेट करने के लिए लॉश की सेट विधि का उपयोग कर सकते हैं। प्रथम-स्तरीय गुण सेट करना बहुत सीधा है। नेस्टेड संपत्ति का उपयोग मुश्किल है और आपको इसके लिए लॉश जैसे परीक्षण किए गए पुस्तकालय का उपयोग करना चाहिए।

आप एक डीप नेस्टेड ऑब्जेक्ट को निम्न तरीके से सेट कर सकते हैं -

उदाहरण

let _ = require("lodash");
let obj = {
   a: {
      b: {
         foo: "test"
      },
      c: 2
   }
};
_.set(obj, "a.b.foo", "test1");
_.set(obj, "a.c", { test2: "bar" });
console.log(obj);

आउटपुट

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

{ a: { b: { foo: 'test1' }, c: { test2: 'bar' } } }

आप अपना खुद का सेटअपडेटप्रॉप फंक्शन निम्नलिखित तरीके से भी लिख सकते हैं -

const setUpdateProp = (object, path, value) => {
   if (path.length === 1) object[path[0]] = value;
      else if (path.length === 0) throw error;
   else {
      if (object[path[0]])
         return setUpdateProp(object[path[0]], path.slice(1), value);
      else {
         object[path[0]] = {};
         return setUpdateProp(object[path[0]], path.slice(1), value);
      }
   }
};

आप प्रॉप्स को एक्सेस करने के लिए ऐरे पास करके इसका इस्तेमाल कर सकते हैं।

उदाहरण

var obj = {
   level1:{
      level2:{
         level3:{
            name: "Foo"
         }
      },
      anotherLevel2: "bar"
   }
};
setUpdateProp(obj, ["level1", "level2"], "FooBar");
console.log(obj);

आउटपुट

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

{ level1: { level2: 'FooBar', anotherLevel2: 'bar' } }

  1. जावास्क्रिप्ट में ऑब्जेक्ट सदस्यों को सेट करना

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

  1. जावास्क्रिप्ट में डॉट नोटेशन बनाम ब्रैकेट नोटेशन

    जावास्क्रिप्ट में ऑब्जेक्ट गुणों तक पहुँचने के लिए डॉट नोटेशन और ब्रैकेट नोटेशन दोनों का उपयोग किया जाता है। डॉट नोटेशन का उपयोग ज्यादातर इसलिए किया जाता है क्योंकि इसे पढ़ना और समझना आसान होता है और वर्बोज़ भी नहीं होता है। डॉट नोटेशन और ब्रैकेट नोटेशन के बीच मुख्य अंतर यह है कि ब्रैकेट नोटेशन हमें

  1. जावास्क्रिप्ट में डॉट नोटेशन

    जावास्क्रिप्ट में ऑब्जेक्ट गुणों तक पहुँचने के लिए डॉट नोटेशन का उपयोग किया जाता है। डॉट नोटेशन को लागू करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="