एक्सप्रेस/कनेक्ट के साथ मैं किसी भी प्रारूप में एक मध्यस्थ के समारोह की स्थापना कर सकते हैं:यह कैसे काम करता है? वैकल्पिक पहला तर्क एक्सप्रेस में इस्तेमाल किया (अरे, अनुरोध, रेस, अगले) या (अनुरोध, रेस, अगले)
function(req, res, next) // first argument will be a request
या
function(err, req, res, next) // first argument will be an error
एक्सप्रेस, कनेक्ट से वापस कदम, बुनियादी जावास्क्रिप्ट को: मुझे समझ नहीं आता कि यह कैसे एक वैकल्पिक पहला तर्क करना संभव है?
कैसे पता चलेगा कि मेरा कार्य err
ऑब्जेक्ट को पहले स्वीकार करेगा? मैंने यह संभव बनाने के लिए सोचा था कि संरचना निम्न की तरह होनी चाहिए:
function(req, res, next, err)
क्या मुझे यहां कुछ बुनियादी याद आ रही है? क्या यह पूछना संभव है कि फ़ंक्शन कितने तर्क की अपेक्षा कर रहा है?
संपादित करें: नीचे दिए गए उत्तरों के लिए धन्यवाद। लेकिन मिडलवेयर फ़ंक्शन को व्यक्त करने के लिए पास किया गया है, इसलिए arguments
चर मान्य नहीं है। हालांकि length
सही है ... मुझे लगता है कि मैंने इसे समझ लिया है, यह पुष्टि करना अच्छा होगा कि यह मामला है या नहीं। उदाहरण नीचे:
var fn;
fn = function (one, two) {};
console.log(fn.length); // 2
fn = function (one, two, three) {};
console.log(fn.length); // 3
मैं हमेशा सोच रहा था अगर यह संभव है या नहीं हो सकता है, तो अपने आप को कि अपनी नहीं राजी कर लिया! –