Understanding Javascript generated by Typescript compiler -


अगर मैं यह साधारण टाइप कीट कोड टाइप करता हूँ:

  class Point2D {constructor (public x: संख्या, सार्वजनिक वाई: नंबर) {}}  

और जे जेएस को देखें:

  var पॉइंट 2 डी = (फ़ंक्शन () {फ़ंक्शन बिंदु 2 डी (x) , Y) {this.x = x; this.y = y;} बिंदु 2D;}) ();  

मेरा प्रश्न: इसके ऊपर कैसे भिन्न होता है:

  फ़ंक्शन बिंदु 2D (x, y) {this.x = x; यह। Y = y; }  

यदि कोई अंतर नहीं है, तो ऊपर बहुत सरल है

आप जो देख रहे हैं डिज़ाइन पैटर्न - मॉड्यूल <और अधिक देखें:

  • (बेन चेरी द्वारा लिखित)

एक उद्धरण:

मॉड्यूल निर्यात

कभी-कभी आप वैश्विक उपयोग नहीं करना चाहते हैं, लेकिन आप उन्हें घोषित करना चाहते हैं। हम अनाम फ़ंक्शन के रिटर्न वैल्यू का उपयोग करते हुए हम उन्हें निर्यात करके आसानी से ऐसा कर सकते हैं। ऐसा करने से मूल मॉड्यूल पैटर्न पूरा हो जाएगा, इसलिए यह एक पूर्ण उदाहरण है:

  var मॉड्यूल = (फ़ंक्शन () {var my = {}, privateVariable = 1; फ़ंक्शन privateMethod ( ) {// ...} my.moduleProperty = 1; my.moduleMethod = फ़ंक्शन () {// ...}; वापस मेरी;} ());  

ध्यान दें कि हमने दो सार्वजनिक गुणों के साथ मॉड्यूल नामक वैश्विक मॉड्यूल की घोषणा की है: मॉड्यूल नाम की एक विधि। मॉड्यूल और एक नाम MODULE.moduleProperty चर। इसके अलावा, यह गुमनाम समारोह को बंद करने का उपयोग करते हुए निजी आंतरिक राज्य का रखरखाव करता है। साथ ही, हम ऊपर उल्लिखित पैटर्न का उपयोग करके आसानी से आवश्यक विश्वव्यापी आयात कर सकते हैं।

एक अन्य वास्तविक मौलिक संसाधन है:

  • (एक पुस्तक एडी ओस्मानी)

एक उद्धरण:

मॉड्यूल पैटर्न

जावास्क्रिप्ट में, मॉड्यूल पैटर्न का उपयोग किया जाता है इसके आगे वर्गों की अवधारणा इस तरह से अनुकरण करते हैं कि हम एक एकल वस्तु के भीतर सार्वजनिक / निजी दोनों तरीकों और चर को शामिल करने में सक्षम हैं, इस प्रकार वैश्विक दायरे से विशेष भागों को परिरक्षित करते हैं।

लिंक में और अधिक देखें

div>

Comments

Popular posts from this blog

sqlite3 - UPDATE a table from the SELECT of another one -

c# - Showing a SelectedItem's Property -

javascript - Render HTML after each iteration in loop -