यह आलेख परिभाषित होने पर जावास्क्रिप्ट 'फ़ंक्शन परिभाषित नहीं त्रुटि' का वर्णन करेगा।
जावास्क्रिप्ट फ़ंक्शन परिभाषित त्रुटि नहीं है (लेकिन यह परिभाषित है)
कभी-कभी, फ़ंक्शन को कोड में परिभाषित किया जाता है, लेकिन फिर भी, आप निम्न त्रुटि का सामना कर सकते हैं:
फ़ंक्शन को परिभाषित करने के बाद उपरोक्त त्रुटि होने के दो मुख्य कारण हैं, जो नीचे सूचीबद्ध हैं:
- फ़ंक्शन की वर्तनी गलत है या उसका कैपिटलाइज़ेशन गलत है.
- फ़ंक्शन को एक अलग दायरे में परिभाषित किया गया है।
कारण 1: फ़ंक्शन की वर्तनी गलत है या उसका कैपिटलाइज़ेशन गलत है
कभी-कभी, फ़ंक्शन को गलत वर्तनी के साथ कॉल किया जाता है। जैसा कि जावास्क्रिप्ट एक केस-संवेदी भाषा है, जावास्क्रिप्ट दुभाषिया उसे नहीं खोज सका और ' समारोह परिभाषित नहीं ' गलती।
उदाहरण
सबसे पहले, हम एक फ़ंक्शन को परिभाषित करेंगे ' योग 'जो दो संख्याओं का योग लौटाता है' ए ' और ' बी ':
समारोह योग ( ए, बी ) {वापस करना ए + बी ;
}
समारोह को बुलाओ ' योग ' जैसा ' जोड़ 'पासिंग नंबरों द्वारा' 4 ' और ' 7 ':
सांत्वना देना। लकड़ी का लट्ठा ( जोड़ ( 4 , 7 ) )
यह एक त्रुटि फेंक देगा ' राशि परिभाषित नहीं है ':
इसे कैसे जोड़ेंगे?
इस त्रुटि को ठीक करने के लिए, सुनिश्चित करें कि फ़ंक्शन नाम की वर्तनी सही है और उसका कैपिटलाइज़ेशन सही है:
सांत्वना देना। लकड़ी का लट्ठा ( योग ( 4 , 7 ) ) ;अब, समारोह ' योग 'सफलतापूर्वक बुलाया गया है और दो संख्याओं का योग प्रिंट करें' 4 ' और ' 7 ':
कारण 2: कार्य को एक अलग दायरे में परिभाषित किया गया है
जावास्क्रिप्ट में, प्रत्येक फ़ंक्शन का अपना दायरा होता है, और एक फ़ंक्शन केवल वेरिएबल्स और फ़ंक्शंस तक पहुंच सकता है जो अपने दायरे में परिभाषित होते हैं। यदि किसी फ़ंक्शन को एक अलग दायरे में परिभाषित किया गया है, तो यह वर्तमान दायरे तक पहुंच योग्य नहीं हो सकता है, जिसके परिणामस्वरूप ' समारोह परिभाषित नहीं ' गलती।
उदाहरण
एक समारोह परिभाषित करें ' जोड़() 'दो मापदंडों के साथ' ए ' और ' बी 'समारोह के अंदर' प्रिंट () ':
समारोह प्रिंट ( ) {समारोह योग ( ए, बी ) {
सांत्वना देना। लकड़ी का लट्ठा ( ए + बी ) ;
}
}
समारोह को बुलाओ ' जोड़() ':
जोड़ ( 5 , 10 ) ;यह एक त्रुटि देता है क्योंकि योग () को प्रिंट () फ़ंक्शन के अंदर परिभाषित किया गया है लेकिन दायरे से बाहर पहुँचा गया है:
इसे कैसे जोड़ेंगे?
सुनिश्चित करें कि फ़ंक्शन को उचित दायरे में परिभाषित किया गया है और जहां से इसे बुलाया जा रहा है वहां से पहुंचा जा सकता है। उदाहरण के लिए, यदि फ़ंक्शन को किसी अन्य फ़ंक्शन के अंदर परिभाषित किया गया है, तो यह बाहर से एक्सेस योग्य नहीं हो सकता है।
इसे परिभाषित करने के बाद प्रिंट () फ़ंक्शन के अंदर योग () को कॉल करें:
समारोह प्रिंट ( ) {समारोह योग ( ए, बी ) {
सांत्वना देना। लकड़ी का लट्ठा ( ए + बी ) ;
}
जोड़ ( 1 , 4 ) ;
}
प्रिंट () विधि को कॉल करें:
छपाई ( ) ;उत्पादन
या आप फ़ंक्शन को अलग से भी परिभाषित कर सकते हैं और इसे किसी अन्य फ़ंक्शन के दायरे में कॉल कर सकते हैं:
समारोह योग ( ए, बी ) {सांत्वना देना। लकड़ी का लट्ठा ( ए + बी ) ;
}
यहां, हम प्रिंट () फ़ंक्शन के अंदर योग () कॉल करेंगे:
समारोह प्रिंट ( ) {जोड़ ( 5 , 10 ) ;
}
फ़ंक्शन को निष्पादित करने के लिए प्रिंट () विधि को कॉल करें ' जोड़() ':
छपाई ( ) ;दो संख्याओं का योग' 5 ' और ' 10 ' प्रदर्शित किया गया है:
हमने जावास्क्रिप्ट के कारणों और समाधानों पर चर्चा की है” फ़ंक्शन परिभाषित त्रुटि नहीं ” (लेकिन यह परिभाषित है)।
निष्कर्ष
दो मुख्य कारण हैं कि ' समारोह परिभाषित नहीं 'फ़ंक्शन को परिभाषित करने के बाद त्रुटि होती है, जैसे' फ़ंक्शन की वर्तनी गलत है या उसका कैपिटलाइज़ेशन गलत है ' या ' फ़ंक्शन को एक अलग दायरे में परिभाषित किया गया है ”। इस लेख ने जावास्क्रिप्ट के कारणों और समाधानों को परिभाषित किया 'फ़ंक्शन परिभाषित नहीं त्रुटि' (लेकिन यह परिभाषित है)।