यहां हमें एक फ़ंक्शन बनाना है जो एक ऑब्जेक्ट और एक सर्च स्ट्रिंग लेता है और उन ऑब्जेक्ट कीज़ को फ़िल्टर करता है जो सर्च स्ट्रिंग से शुरू होती हैं और ऑब्जेक्ट लौटाता है।
ऐसा करने का कोड यहां है:
उदाहरण
const obj = { "PHY": "Physics", "MAT": "Mathematics", "BIO": "Biology", "COM": "Computer Science", "SST": "Social Studies", "SAN": "Sanskrit", "ENG": "English", "HIN": "Hindi", "ESP": "Spanish", "BST": "Business Studies", "ECO": "Economics", "CHE": "Chemistry", "HIS": "History" } const str = 'en'; const returnFilteredObject = (obj, str) => { const filteredObj = {}; Object.keys(obj).forEach(key => { if(key.substr(0, str.length).toLowerCase() === str.toLowerCase()){ filteredObj[key] = obj[key]; } }); return filteredObj; }; console.log(returnFilteredObject(obj, str));
कोड व्याख्या:
हम बस ऑब्जेक्ट की प्रत्येक की पर पुनरावृति करते हैं, यदि यह हमारे द्वारा आर्गुमेंट के रूप में प्राप्त str से शुरू होती है, तो हम इसे दूसरे ऑब्जेक्ट में सेव करते हैं अन्यथा हम पुनरावृति करते रहते हैं।
इस विशेष समस्या के उद्देश्य के लिए, हमने प्रत्येक की पर पुनरावृति की और आवश्यक की को एक नए ऑब्जेक्ट में डाल दिया, लेकिन अधिक प्रदर्शन वाले समाधान के लिए नए ऑब्जेक्ट बनाने के बजाय हम केवल अवांछित प्रॉपर्टीज को मूल ऑब्जेक्ट से हटा सकते थे।
आउटपुट
कंसोल में आउटपुट होगा:
{ ENG:"English" }