जवाबों:
अंतर यह है कि as CircleTSX फ़ाइलों में काम करता है, लेकिन <Circle>JSX सिंटैक्स के साथ विरोध करता है। asइस कारण से शुरू किया गया था।
उदाहरण के लिए, .tsxफ़ाइल में निम्न कोड :
var circle = <Circle> createShape("circle");
निम्नलिखित त्रुटि का परिणाम होगा:
TS17002 त्रुटि: 'सर्कल' के लिए संबंधित JSX समापन टैग की अपेक्षा।
हालांकि, as Circleबस ठीक काम करेगा।
as Circleअभी से उपयोग करें । यह अनुशंसित सिंटैक्स है।
से विकी पेज : "क्या टाइपप्रति में [1.6] नया क्या है":
नई
.tsxफ़ाइल एक्सटेंशन औरasऑपरेटरटाइपस्क्रिप्ट 1.6 एक नई
.tsxफ़ाइल एक्सटेंशन का परिचय देता है । यह एक्सटेंशन दो काम करता है: यह टाइपस्क्रिप्ट फ़ाइलों के अंदर JSX को सक्षम करता है, और यह नएasऑपरेटर को कास्ट करने के लिए डिफ़ॉल्ट तरीका बनाता है (JSX अभिव्यक्तियों और टाइपस्क्रिप्ट प्रीफ़िक्स कास्ट ऑपरेटर के बीच किसी भी अस्पष्टता को हटाने)। उदाहरण के लिए:var x = <any> foo; // is equivalent to: var x = foo as any;