Javascript: Function expression over function declaration -
मेरे पास दो फ़ंक्शंस नाम हैं init
एक फ़ंक्शन declaration का उपयोग करके घोषित किया गया है और दूसरा, कार्य अभिव्यक्ति का उपयोग करके, जैसे:
फ़ंक्शन init () {चेतावनी ('init 1'); } Var init = function () {चेतावनी ('init 2'); } इस में(); जब मैं init फ़ंक्शन कॉल करता हूँ तो यह init 2 अलर्ट करता है।
मेरा प्रश्न यह है:
1- क्यों जावास्क्रिप्ट त्रुटि फेंक नहीं करता क्योंकि दोनों फ़ंक्शंस समान नाम हैं।
2- मैं पहले फ़ंक्शन कैसे कॉल कर सकता हूं?
क्यों जावास्क्रिप्ट त्रुटि नहीं फेंकता क्योंकि दोनों फ़ंक्शंस समान नाम हैं।
उनके पास समान नाम नहीं है। दूसरा एक वैरिएबल init है जिसमें एक अनाम फ़ंक्शन होता है। पहला कोड init नाम दिया गया है।
आप दोनों पर निम्न कार्य करके परीक्षण कर सकते हैं:
console.log (init.name) ); आप देखेंगे कि वास्तव में पहले का नाम है init , जबकि दूसरे का कोई नाम नहीं है।
कैसे क्या मैं पहले फ़ंक्शन को कॉल कर सकता / सकती हूं?
इस उदाहरण में पहली बार आपके कोड को दूसरे के लिए init के उपयोग के बाद नहीं बुलाया जा सकता। जब तक आपके पास ऐसा पहला कोई संदर्भ न हो:
फ़ंक्शन init () {चेतावनी ('init 1'); } Var मूल = init;
Comments
Post a Comment