Avatar ·

TypeScript में "as const" का क्या अर्थ है और इसकी आवश्यकता क्यों है?

सभी को नमस्कार! मैंने TypeScript सीखना शुरू किया है और `as const` कंस्ट्रक्शन पर ध्यान गया। मैं समझ गया कि यह किसी तरह type assertion से संबंधित है, लेकिन पूरी तरह से समझ नहीं पाया। यहाँ एक उदाहरण है जो मुझे भ्रमित करता है: ```typescript const colors = ['red', 'green', 'blue'] as const; // typeof colors -> readonly ["red", "green", "blue"] const myColor = 'red' as const; // typeof myColor -> "red" (literal type, string नहीं) const config = { api: 'https://api.example.com', port: 3000 } as const; // typeof config -> { readonly api: "https://api.example.com"; readonly port: 3000 } ``` मैं देख रहा हूँ कि types बदल रहे हैं, लेकिन समझ नहीं आ रहा: 1. सिर्फ `const colors = ['red', 'green', 'blue']` से type `string[]` क्यों मिलता है, जबकि `as const` से विशिष्ट literals के साथ tuple क्यों मिलता है? 2. अगर variable पहले से `const` से घोषित है तो `as const` क्यों निर्दिष्ट करें? क्या `const` मान को अपरिवर्तनीय नहीं बनाता? 3. यह वास्तविक परिदृश्यों में कहाँ उपयोगी हो सकता है? देखा है कि Redux actions में उपयोग होता है, लेकिन पूरी तरह समझ नहीं आया।