मान लीजिए हमारे पास एक ऑब्जेक्ट का रेफरेंस है:
let test = {};इस ऑब्जेक्ट में संभावित रूप से (लेकिन तुरंत नहीं) नेस्टेड ऑब्जेक्ट्स होंगे, जैसे:
test = {level1: {level2: {level3: "level3"}}};हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसा ऑब्जेक्ट पहले आर्गुमेंट के रूप में लेता है और उसके बाद कितने भी की स्ट्रिंग्स आर्गुमेंट्स के रूप में लेता है।
फ़ंक्शन को यह निर्धारित करना चाहिए कि की स्ट्रिंग्स द्वारा दर्शाया गया नेस्टेड कॉम्बिनेशन ऑब्जेक्ट में मौजूद है या नहीं।
उदाहरण
इसके लिए कोड होगा:
const checkNested = function(obj = {}){ const args = Array.prototype.slice.call(arguments, 1); for (let i = 0; i < args.length; i++) { if (!obj || !obj.hasOwnProperty(args[i])) { return false; } obj = obj[args[i]]; }; return true; } let test = { level1:{ level2:{ level3:'level3' } } }; console.log(checkNested(test, 'level1', 'level2', 'level3')); console.log(checkNested(test, 'level1', 'level2', 'foo'));आउटपुट
कंसोल में आउटपुट होगा:
true false