जावास्क्रिप्ट में फंक्शन के बाईं ओर एक्सप्रेशन
आइए निम्नलिखित कोड पर विचार करें:
+function func() {
console.log('!');
}
जैसा कि आप पहले से ही जानते हैं, यह फ़ंक्शन एक फंक्शनल एक्सप्रेशन है, इस तथ्य के बावजूद कि इसका एक नाम दिया गया है (हमने पहले ही पता लगा लिया था कि नाम की उपस्थिति आम तौर पर कोई मानदंड नहीं है)। इस प्लस को हटा दें - और हमें Function Declaration मिलता है:
function func() {
console.log('!');
}
आइए फ़ंक्शन से पहले वाली लाइन पर + लगाएं -
यह फिर से Function Expression बन जाएगा:
+
function func() {
console.log('!');
}
और अब प्लस के बाद नंबर 1
और सेमीकॉलन लगाएं - हमारा फ़ंक्शन Function
Declaration बन जाएगा:
+1;
function func() {
console.log('!');
}
ऐसा क्यों: क्योंकि पहली पंक्ति पर एक पूर्ण कमांड लिखी गई है, जो सेमीकॉलन से बंद हो गई है। इसलिए यह कमांड हमारे फ़ंक्शन पर किसी भी तरह से प्रभाव नहीं डालती है।
वास्तव में, सेमीकॉलन को हटाया जा सकता है, आखिरकार जावास्क्रिप्ट में यह अनिवार्य नहीं है - फ़ंक्शन वैसे भी Function Declaration ही रहेगा:
+1
function func() {
console.log('!');
}
लेकिन अगर 1 के बाद एक और
प्लस लगा दिया जाए, तो फ़ंक्शन Function Expression बन जाएगा:
+1+
function func() {
console.log('!');
}
ऐसा क्यों: क्योंकि पहली लाइन पर एक अधूरा एक्सप्रेशन है - एक प्लस लगा है और उसके बाद कुछ नहीं है। इसलिए जावास्क्रिप्ट इंटरप्रेटर मानता है कि यह प्लस नीचे वाली लाइन से संबंधित है, यानी हमारे फ़ंक्शन से।
यदि पहली पंक्ति पर एक पूर्ण एक्सप्रेशन है, तो जावास्क्रिप्ट स्वचालित रूप से उसमें एक सेमीकॉलन लगा देता है और यह एक्सप्रेशन हमारे फ़ंक्शन पर कोई प्रभाव नहीं डालता है।
निर्धारित करें कि प्रस्तुत फ़ंक्शन Function Declaration है या Function Expression:
-
function func() {
console.log('!');
}
निर्धारित करें कि प्रस्तुत फ़ंक्शन Function Declaration है या Function Expression:
-1;
function func() {
console.log('!');
}
निर्धारित करें कि प्रस्तुत फ़ंक्शन Function Declaration है या Function Expression:
-1
function func() {
console.log('!');
}
निर्धारित करें कि प्रस्तुत फ़ंक्शन Function Declaration है या Function Expression:
1
function func() {
console.log('!');
}
निर्धारित करें कि प्रस्तुत फ़ंक्शन Function Declaration है या Function Expression:
-1-
function func() {
console.log('!');
}