एक यूनियन (A | B) का मतलब है "A या B।" एक इंटरसेक्शन (A & B) का मतलब है "A और B दोनों एक साथ।"
= | | ;
: = ;
() { }
एक यूनियन (A | B) का मतलब है "A या B।" एक इंटरसेक्शन (A & B) का मतलब है "A और B दोनों एक साथ।"
= | | ;
: = ;
() { }
function format(x: string | number) {
// x.toFixed(2); // ❌ toFixed doesn't exist on string
if (typeof x === "number") return x.toFixed(2); // ✅ narrowed to number
return x.toUpperCase(); // ✅ here it's a string
}
जब तक आप एक यूनियन को संकीर्ण न करें, आप केवल उन सदस्यों तक पहुंच सकते हैं जो यूनियन के हर सदस्य पर मौजूद हैं — कंपाइलर आपकी सुरक्षा करता है।
type Name = { name: string };
type Age = { age: number };
type Person = Name & Age; // must have BOTH name and age
const p: Person = { name: "Ann", age: 30 }; // both required
इंटरसेक्शन ऑब्जेक्ट प्रकारों को संयोजित/मिश्रित करने के लिए बहुत अच्छे हैं (उदा. किसी मौजूदा प्रकार में props जोड़ना)।
यूनियन "कई संभावनाओं में से एक" को मॉडल करते हैं — सुरक्षित स्थिति मॉडलिंग की नींव (उदा. रिड्यूसर स्थिति के लिए विभेदक यूनियन), फ़ंक्शन ओवरलोड, और nullable प्रकार (T | null)।
इंटरसेक्शन प्रकारों को एक साथ संयोजित करते हैं।
एक साथ, वे TypeScript की प्रकार प्रणाली को वास्तविक डेटा को सटीक रूप से प्रतिबिंबित करने के लिए पर्याप्त अभिव्यक्तिशील बनाते हैं।
विस्तृत उत्तरों के साथ IT इंटरव्यू प्रश्नों की एक लाइब्रेरी — जूनियर से सीनियर तक।
दान करें