जावास्क्रिप्ट में कार्यों को परिभाषित करने के कुछ तरीके निम्नलिखित हैं -
फ़ंक्शन परिभाषा
जावास्क्रिप्ट में किसी फ़ंक्शन को परिभाषित करने का सबसे सामान्य तरीका फ़ंक्शन . का उपयोग करना है कीवर्ड, उसके बाद एक अद्वितीय फ़ंक्शन नाम, मापदंडों की एक सूची (जो खाली हो सकती है), और एक स्टेटमेंट ब्लॉक जो घुंघराले ब्रेसिज़ से घिरा हुआ है।
यहाँ एक उदाहरण दिया गया है जो सामान्य फ़ंक्शन परिभाषा दिखा रहा है -
<script> <!-- function Display() { alert("Hello World!"); } //--> </script>
तुरंत आमंत्रित कार्य
जावास्क्रिप्ट में फंक्शन्स को परिभाषित करने का एक अन्य तरीका है तत्काल इनवोक्ड फंक्शन्स का उपयोग करना। रैपिंग का उद्देश्य नेमस्पेस और सदस्य कार्यों की दृश्यता को नियंत्रित करना है। यह कोड को फ़ंक्शन स्कोप के अंदर लपेटता है और अन्य पुस्तकालयों के साथ संघर्ष को कम करता है। इसे हम तुरंत बुलाए गए फंक्शन एक्सप्रेशन (आईआईएफई) या सेल्फ एक्ज़ीक्यूटिंग एनोनिमस फंक्शन कहते हैं।
सिंटैक्स
यहां सिंटैक्स है -
(function() { // code })();
जैसा कि आप ऊपर देख सकते हैं, कोष्ठकों की निम्न जोड़ी कोड को कोष्ठक के अंदर एक व्यंजक में परिवर्तित करती है -
function(){...}
इसके अलावा, अगली जोड़ी, यानी कोष्ठक की दूसरी जोड़ी ऑपरेशन जारी रखती है। यह फ़ंक्शन को कॉल करता है, जो उपरोक्त अभिव्यक्ति के परिणामस्वरूप होता है।
अनाम कार्य
अनाम फ़ंक्शन हमेशा एक चर नाम का उपयोग करके लोड किए जाते हैं। बेनामी, जैसा कि नाम से पता चलता है, बिना किसी नाम पहचानकर्ता के एक फ़ंक्शन बनाने की अनुमति देता है। इसका उपयोग अन्य कार्यों के लिए तर्क के रूप में किया जा सकता है। वेरिएबल नाम से उन्हें कॉल करें -
इस प्रकार जावास्क्रिप्ट अनाम कार्यों का उपयोग किया जा सकता है -
var func = function() { alert(‘This is anonymous'); } func();
उदाहरण
//anonymous function var a = function() { return 5; }
फंक्शन कंस्ट्रक्टर्स
फ़ंक्शन () कंस्ट्रक्टर का उपयोग जावास्क्रिप्ट में एक नया फ़ंक्शन ऑब्जेक्ट बनाने के लिए किया जाता है। जब फ़ंक्शन बनाया जाता है तो बनाई गई वस्तुओं को पार्स किया जाता है।
फ़ंक्शन() कंस्ट्रक्टर के साथ काम करने का तरीका जानने के लिए आप निम्न कोड को चलाने का प्रयास कर सकते हैं -
<html> <body> <script> var num = new Function('p', 'q', 'r', 'return p * q * r'); document.write("Value after multiplication: "+num(5, 2, 9)); </script> </body> </html>