हमें एक फ़ंक्शन लिखना है जो एक ऑब्जेक्ट और एक स्ट्रिंग लिटरल्स एरे लेता है, और यह फ़िल्टर्ड ऑब्जेक्ट लौटाता है जिसमें वे कुंजियां होती हैं जो स्ट्रिंग्स के एरे में दिखाई देती हैं।
उदाहरण के लिए - यदि ऑब्जेक्ट है {"a": [], "b": [], "c":[], "d": []} और एरे है ["a", "d"] तो आउटपुट होना चाहिए -
{"a": [], "d":[]}इसलिए, आइए इस फ़ंक्शन के लिए कोड लिखते हैं,
हम ऑब्जेक्ट की कुंजियों पर पुनरावृति करेंगे कि क्या यह एरे में मौजूद है, यदि हां, तो उस कुंजी-मान जोड़ी को एक नए ऑब्जेक्ट में डाल देंगे, अन्यथा हम पुनरावृति करते रहेंगे और अंत में नया ऑब्जेक्ट लौटाएंगे।
उदाहरण
const capitals = { "usa": "Washington DC", "uk": "London", "india": "New Delhi", "italy": "rome", "japan": "tokyo", "germany": "berlin", "china": "shanghai", "spain": "madrid", "france": "paris", "portugal": "lisbon" }; const countries = ["uk", "india", "germany", "china", "france"]; const filterObject = (obj, arr) => { const newObj = {}; for(key in obj){ if(arr.includes(key)){ newObj[key] = obj[key]; }; }; return newObj; }; console.log(filterObject(capitals, countries));आउटपुट
कंसोल में आउटपुट होगा -
{ uk: 'London', india: 'New Delhi', germany: 'berlin', china: 'shanghai', france: 'paris' }