javascript - Inline functions and other method's scope -
मैं कैसे in-line फ़ंक्शन के लिए myFunction visibile को बना सकता हूँ .ready () घटना?
$ (दस्तावेज़) .ready (function () {... सामान ... myFunction (par1, par2, anotherFucntion_callback);}); फ़ंक्शन दूसरे फ़ंक्शनकालेबैक (डेटा) {..stuffs ..}
मैं काफी नहीं अपना सवाल उठाओ क्या आपका मतलब है कि आप "myFunction_callback (डेटा)" को अपने अंतिम तर्क के रूप में पास करना चाहते हैं:
myfunction (par1, par2, anotherFunction_callback); उस "डेटा" पैरामीटर सहित ,
उस स्थिति में समाधान बहुत ही मानक है, इससे पहले इसे लिखें:
Var temp = function () {anotherFunction_callback (डेटा)}; एक वैकल्पिक वाक्यविन्यास है:
फ़ंक्शन temp () {myFunction_callback (डेटा)}; // भले ही यह एक निशुल्क फ़ंक्शन की तरह दिखता है, // अभी भी इसे तैयार (फ़ंक्शन ()) के अंदर परिभाषित करता है / इसलिए मुझे इसे "वैकल्पिक" कहते हैं वे समकक्ष हैं सामान्य तौर पर, यदि आप किसी फ़ंक्शन के 1 या अधिक तर्क के साथ एक फ़ंक्शन पास करना चाहते हैं, तो आप उस प्रारूप का उपयोग करते हैं। यहां, हम मूल रूप से एक नया न-तर्क फ़ंक्शन बनाते हैं जो दूसरे कॉल करता है। नए फ़ंक्शन की "डेटा" चर तक पहुंच होती है इसे "समापन" कहा जाता है, आप उस पर और भी पढ़ना चाह सकते हैं बेशक, अगर कॉलबैक को कोई तर्क की आवश्यकता नहीं है, तो आप केवल मूल फ़ंक्शन नाम का उपयोग कर सकते हैं।
मुझे उम्मीद है यह मददगार होगा।
ps: आप फ़ंक्शन घोषणा को भी इनलाइन कर सकते हैं, जिससे गुमनाम, इसी तरह: myfunction (par1, par2, फ़ंक्शन () {myFunction_callback (डेटा)}); ध्यान दें कि
$ (दस्तावेज़) .ready (function () {}); बहुत अच्छा लगता है।
Comments
Post a Comment