paint-brush
प्रथम श्रेणी और उच्च क्रम के कार्यों को समझनाद्वारा@iggy
3,570 रीडिंग
3,570 रीडिंग

प्रथम श्रेणी और उच्च क्रम के कार्यों को समझना

द्वारा Ignatius Sani3m2022/11/13
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

एक प्रथम श्रेणी का कार्य एक विशेषता है कि प्रोग्रामिंग भाषा या प्रोग्रामिंग भाषा में यह एक ऐसा कार्य है जो तर्क के रूप में एक और कार्य प्राप्त करता है। उच्च-क्रम के कार्यों के बीच मुख्य अंतर यह है कि किसी फ़ंक्शन को रन के बाद कॉल करने के बाद कहा जाता है। जावास्क्रिप्ट में, हम एक फ़ंक्शन को एक चर या यहां तक कि संपत्ति में संग्रहीत कर सकते हैं, जैसा कि आप जावास्क्रिप्ट मानों को औसत करने के लिए करेंगे। यह अधिक लचीला कोड लिखने का एक नया तरीका खोलता है क्योंकि हम कर सकते हैं। ए में स्टोर कार्य करता है। चर या गुण जोड़ें।
featured image - प्रथम श्रेणी और उच्च क्रम के कार्यों को समझना
Ignatius Sani HackerNoon profile picture


सभी को नमस्कार! आज मैं प्रोग्रामिंग (प्रथम श्रेणी के कार्यों) में एक बहुत प्रसिद्ध अवधारणा पर चर्चा करने जा रहा हूँ। इस विषय पर पहले से ही बहुत सारे संसाधन हैं, लेकिन अभी भी इस लेख से कुछ नया लेना है, और मैंने बेहतर समझ के लिए चीजों को सरल बनाने के लिए समय लिया है।


एक डेवलपर के रूप में मेरे लिए यह क्यों महत्वपूर्ण है?

  • जब आप उन्हें इस्तेमाल करते हुए देखते हैं तो यह आपको जावास्क्रिप्ट कॉलबैक फ़ंक्शंस की बेहतर समझ रखने में मदद करता है।
  • यह आपके कोड के व्यवहार को जानने में आपकी मदद करता है।
  • यह आपको एक बेहतर समझ देता है कि जावास्क्रिप्ट कार्यों को मूल्यों के रूप में क्यों मानता है।


प्रथम श्रेणी का कार्य क्या है?

विकिपीडिया के अनुसार, एक प्रोग्रामिंग भाषा को प्रथम श्रेणी के कार्यों के लिए कहा जाता है यदि यह प्रथम श्रेणी के नागरिकों के रूप में कार्य करता है।


इसका मतलब यह है कि भाषा अन्य कार्यों के तर्कों के रूप में गुजरने वाले कार्यों का समर्थन करती है, उन्हें विभिन्न कार्यों से मूल्यों के रूप में लौटाती है, उन्हें चर के लिए निर्दिष्ट करती है, या उन्हें डेटा संरचनाओं में संग्रहीत करती है।


जावास्क्रिप्ट में, चीजें इस तरह से काम करती हैं क्योंकि एक फ़ंक्शन सिर्फ एक अन्य प्रकार की वस्तु है। यदि आप इस अवधारणा के लिए नए हैं, तो आपको यह बहुत अजीब लगेगा, खासकर यदि आप एक अलग प्रोग्रामिंग पृष्ठभूमि से आ रहे हैं, लेकिन अभी के लिए, अपने दिमाग को इसके चारों ओर लपेट लें। चूँकि वस्तुएँ मूल्य हैं, कार्य भी हैं, और जावास्क्रिप्ट उन्हें एक मानता है। यह अधिक लचीला कोड लिखने का एक नया तरीका खोलता है क्योंकि हम फ़ंक्शन को एक चर में संग्रहीत कर सकते हैं या गुण जोड़ सकते हैं।

चीजों को आसान बनाने के लिए मैंने मुख्य बिंदुओं को बुलेट सूची में तोड़ दिया है। प्रथम श्रेणी के कार्यों को बेहतर ढंग से समझने के लिए, इसे स्पष्ट करने के लिए यहां कुछ बिंदु दिए गए हैं।


  • एक तर्क के रूप में कार्य करता है
  • फ़ंक्शंस रिटर्निंग फ़ंक्शंस
  • मूल्यों के रूप में कार्य करता है

एक तर्क के रूप में कार्य करता है

प्रथम श्रेणी के फ़ंक्शन के साथ एक चीज़ संभव हो गई है, एक फ़ंक्शन को एक तर्क के रूप में पारित करना; हम कोड की इस शैली को बहुत सारे जावास्क्रिप्ट कोड में देख सकते हैं। उदाहरण के लिए addEventListener विधि, जो तर्क के रूप में जावास्क्रिप्ट कॉलबैक फ़ंक्शन प्राप्त करती है


 button.addEventListener('click', function(){ console.log('hellloooo') })


पिछले कोड स्निपेट में, हम देखते हैं कि addEventListener को दो तर्क मिलते हैं, जहां दूसरा फ़ंक्शन कॉलबैक फ़ंक्शन होता है, और बटन को क्लिक करने के बाद कॉल किया जाएगा।


फ़ंक्शंस रिटर्निंग फ़ंक्शंस

हम Javascript में किसी अन्य फ़ंक्शन से फ़ंक्शन वापस कर सकते हैं; जावास्क्रिप्ट में कई वस्तुओं में विधियाँ हैं, जैसे, जावास्क्रिप्ट में ऐरे फ़ंक्शंस। साथ ही, हमारे पास फ़ंक्शन की विधि है, उदाहरण के लिए, call() , bind() , apply() जावास्क्रिप्ट विधियों को जावास्क्रिप्ट फ़ंक्शंस पर कॉल किया जा सकता है।


 function count(){ Let counter = 0; return function(){ counter++ } }


काउंट फ़ंक्शन ने एक और फ़ंक्शन लौटाया जहां हमने काउंटर को अपडेट किया।


मूल्यों के रूप में कार्य करता है

जावास्क्रिप्ट में, हम एक फ़ंक्शन को एक चर या यहां तक कि संपत्ति में संग्रहीत कर सकते हैं, जैसा कि आप जावास्क्रिप्ट मानों को औसत करने के लिए करेंगे।


 Const multiply = (a,b) => a * b


उपरोक्त जावास्क्रिप्ट एरो फ़ंक्शन को गुणा चर में संग्रहीत किया जाता है, जिसे कहा जा सकता है

गुणा (3,5) इस तरह।


जावास्क्रिप्ट में प्रथम श्रेणी के कार्यों का महत्व

प्रथम श्रेणी के कार्यों का प्राथमिक महत्व यह है कि वे हमारे लिए उच्च-क्रम के कार्यों को लिखना संभव बनाते हैं।



उच्च-क्रम समारोह

यह या तो एक फ़ंक्शन है जो तर्क के रूप में एक और फ़ंक्शन प्राप्त करता है या एक फ़ंक्शन जो एक नया फ़ंक्शन देता है। यह प्रथम श्रेणी के कार्य के कारण ही संभव है।


 button.addEventListener('click', function(){ console.log('hellloooo') })


यहाँ addEventListener() एक उच्च-क्रम फ़ंक्शन का एक उदाहरण है क्योंकि यह तर्क के रूप में एक और फ़ंक्शन प्राप्त करता है। यह अक्सर जावास्क्रिप्ट कॉलबैक फ़ंक्शन को संदर्भित करता है क्योंकि इसे HOF के चलने के बाद बुलाया गया है। उच्च-क्रम और प्रथम श्रेणी के कार्यों के बीच मुख्य अंतर यह है कि प्रथम श्रेणी का कार्य एक विशेषता है जो एक प्रोग्रामिंग भाषा में है या नहीं है, इसका सीधा सा मतलब है कि सभी कार्य मूल्य हैं।


निष्कर्ष

अंत में, यह जानना आवश्यक है कि व्यवहार में कोई प्रथम श्रेणी का कार्य नहीं है; यह सिर्फ एक अवधारणा है। हालाँकि, व्यवहार में उच्च-क्रम के कार्य संभव हैं क्योंकि भाषा प्रथम श्रेणी के कार्यों का समर्थन करती है।