इफेक्ट-टीएस एक विकल्प के अंदर मूल्यों को फ़िल्टर करने के लिए विभिन्न तरीके प्रदान करता है, जिससे आप वैकल्पिक मूल्य पर परिवर्तन, विधेय या जांच लागू कर सकते हैं। ये फ़ंक्शन यह सुनिश्चित करने में मदद करते हैं कि कोई नहीं मान या जो निर्दिष्ट शर्तों को पूरा नहीं करते हैं उन्हें हटाते समय केवल प्रासंगिक डेटा बरकरार रखा जाता है। इस लेख में, हम फ़िल्टरिंग विकल्पों के लिए चार प्रमुख कार्यों का पता लगाएंगे: O.partitionMap, O.filterMap, O.filter, और O.exists।
O.partitionMap फ़ंक्शन आपको मैपिंग फ़ंक्शन के आधार पर एक विकल्प को दो विकल्पों के टुपल में विभाजित करने की अनुमति देता है जो एक या तो लौटाता है। या तो.बाएं मान पहले विकल्प में विभाजित होते हैं, जबकि या तो.दाएं मान दूसरे विकल्प में जाते हैं। यदि मूल विकल्प कोई नहीं है, तो दोनों विभाजन कोई नहीं हैं।
function filtering_ex01() { const some = O.some(1); // Create an Option containing the value 1 const none = O.none(); // Create an Option representing no value const toEither = (n: number) => (n % 2 === 0 ? E.left(n) : E.right(n)); console.log(pipe(some, O.partitionMap(toEither))); // Output: [None, Some(1)] (1 is odd, so it goes to the right) console.log(pipe(none, O.partitionMap(toEither))); // Output: [None, None] (since the Option is None) }
यह फ़ंक्शन तब उपयोगी होता है जब आपको एक मैपिंग लागू करने की आवश्यकता होती है जो मूल्यों को वर्गीकृत करती है, साथ ही उन्हें दो समूहों में अलग करती है - वे जो किसी शर्त को पूरा करते हैं और जो नहीं करते हैं।
O.filterMap फ़ंक्शन एक विकल्प के अंदर मान पर एक परिवर्तन फ़ंक्शन लागू करता है। यदि फ़ंक्शन कुछ लौटाता है, तो मान बरकरार रहता है; यदि यह कोई नहीं लौटाता है, तो मान फ़िल्टर कर दिया जाता है। यदि मूल विकल्प कोई नहीं है, तो परिणाम कोई नहीं रहता है।
function filtering_ex02() { const some = O.some(1); // Create an Option containing the value 1 const none = O.none(); // Create an Option representing no value const toEven = (n: number) => (n % 2 === 0 ? O.some(n) : O.none()); console.log(pipe(some, O.filterMap(toEven))); // Output: None (since 1 is not even) console.log(pipe(O.some(2), O.filterMap(toEven))); // Output: Some(2) (since 2 is even) console.log(pipe(none, O.filterMap(toEven))); // Output: None (since the original Option is None) }
यह फ़ंक्शन तब सहायक होता है जब आप विशिष्ट स्थितियों के आधार पर किसी विकल्प के अंदर मान को बदलना और फ़िल्टर करना चाहते हैं।
O.filter फ़ंक्शन जांच करता है कि किसी विकल्प के अंदर का मान किसी दिए गए विधेय को संतुष्ट करता है या नहीं। यदि विधेय संतुष्ट है, तो यह मूल विकल्प लौटाता है; अन्यथा, यह कोई नहीं लौटाता है। यदि मूल विकल्प कोई नहीं है, तो यह कोई नहीं रहता है।
function filtering_ex03() { const some = O.some(1); // Create an Option containing the value 1 const none = O.none(); // Create an Option representing no value const isEven = (n: number) => n % 2 === 0; console.log(pipe(some, O.filter(isEven))); // Output: None (since 1 is not even) console.log(pipe(O.some(2), O.filter(isEven))); // Output: Some(2) (since 2 is even) console.log(pipe(none, O.filter(isEven))); // Output: None (since the original Option is None) }
O.exists फ़ंक्शन जांच करता है कि क्या किसी विकल्प के अंदर का मान किसी विधेय को संतुष्ट करता है, यदि ऐसा होता है तो सही लौटाता है, और यदि नहीं करता है तो गलत लौटाता है। यदि विकल्प कोई नहीं है, तो यह गलत रिटर्न देता है।
function filtering_ex04() { const some = O.some(1); // Create an Option containing the value 1 const none = O.none(); // Create an Option representing no value const isEven = (n: number) => n % 2 === 0; console.log(pipe(some, O.exists(isEven))); // Output: false (since 1 is not even) console.log(pipe(O.some(2), O.exists(isEven))); // Output: true (since 2 is even) console.log(pipe(none, O.exists(isEven))); // Output: false (since the original Option is None) }
यह फ़ंक्शन तब उपयोगी होता है जब आपको यह निर्धारित करने के लिए त्वरित जांच की आवश्यकता होती है कि विकल्प के अंदर का मूल्य विकल्प को परिवर्तित या फ़िल्टर किए बिना किसी शर्त को पूरा करता है या नहीं।
इफेक्ट-टीएस में फ़िल्टरिंग विकल्प स्थितियों या परिवर्तनों के आधार पर वैकल्पिक मूल्यों के लचीले प्रबंधन की अनुमति देता है। चाहे आप O.partitionMap के साथ मानों को विभाजित कर रहे हों, O.filterMap के साथ परिवर्तन लागू कर रहे हों, O.filter के साथ विधेय की जाँच कर रहे हों, या बस O.exists के साथ स्थितियों की पुष्टि कर रहे हों, ये उपकरण विकल्पों को प्रबंधित करने के तरीके को नियंत्रित करने के लिए मजबूत तरीके प्रदान करते हैं। इन फ़ंक्शंस का उपयोग करके, आप वैकल्पिक डेटा को कुशलतापूर्वक प्रबंधित कर सकते हैं, यह सुनिश्चित करते हुए कि केवल प्रासंगिक मान रखे गए हैं या उन पर कार्रवाई की गई है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3