Avatar ·

TypeScript: interface और type में क्या अंतर है? कब क्या उपयोग करें?

सभी को नमस्ते! मैंने TypeScript सीखना शुरू किया और `interface` और `type` के बीच अंतर को लेकर भ्रमित हूँ। दोनों ही ऑब्जेक्ट की संरचना का वर्णन करने की अनुमति देते हैं, लेकिन मुझे समझ नहीं आ रहा कि कब किस टूल का उपयोग करना चाहिए। मेरा कोड देखें। मैं एक उपयोगकर्ता और उसके पते का वर्णन करने का प्रयास कर रहा हूँ: ```typescript // interface के साथ विकल्प interface IUser { name: string; age: number; address: IAddress; } interface IAddress { city: string; street: string; } // type के साथ विकल्प type TUser = { name: string; age: number; address: TAddress; } type TAddress = { city: string; street: string; } ``` दोनों विकल्प काम करते हैं, लेकिन मैंने सुना है कि कुछ मूलभूत अंतर हैं। उदाहरण के लिए, मैंने देखा कि `type` यूनियनों के साथ कुछ कर सकता है, जबकि `interface` नहीं कर सकता। और कुछ प्रोजेक्ट्स में हर चीज़ के लिए `interface` का उपयोग किया जाता है, जबकि अन्य में `type` का। कृपया बताएं कि वास्तविक अंतर क्या है? अच्छे अभ्यास के नियम क्या हैं? क्या ऐसी स्थितियाँ हैं जहाँ केवल एक का ही उपयोग किया जा सकता है?