union (A | B) என்பது "A அல்லது B" என்று பொருள்படுகிறது. intersection (A & B) என்பது "A மற்றும் B ஒரே நேரத்தில்" என்று பொருள்படுகிறது.
ts
= | | ;
: = ;
() { }
union (A | B) என்பது "A அல்லது B" என்று பொருள்படுகிறது. intersection (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
}
நீங்கள் unionஐ குறுக்க வரை, union இல் உள்ள ஒவ்வொரு உறுப்பிலும் இருக்கும் உறுப்பினர்களை மட்டுமே அணுக முடியும் — கம்பைலர் உங்களைப் பாதுகாக்கிறது.
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
Intersections பொருள் வகைகளை இணைக்க/கலக்க சிறந்தவை (எ.கா. ஏற்கனவே உள்ள வகைக்கு props சேர்ப்பது).
Unions "பல சாத்தியங்களில் ஒன்று" மாதிரியாக இருக்கிறது — பாதுகாப்பான நிலை மாடலிங் (எ.கா. reducer நிலைக்கான தாக்குப்பொருத்தமான unions), செயல்பாடு அதிகோணங்கள் மற்றும் குறிப்பிடத்தக்க வகைகளின் அடிப்படை (T | null).
Intersections வகைகளை இணைக்கிறது.
ஒன்றாக, அவை TypeScript இன் வகை அமைப்பை வெளிப்படையாக்குகிறது, இதனால் உண்மையான தரவை சரியாக பிரதிபலிக்க முடியும்.