TypeScript में डिक्शनरी (Dictionary) की घोषणा और आरंभीकरण
नमस्ते सहकर्मियों! मैं TypeScript में नया हूँ (पहले शुद्ध JS में लिखता था) और डिक्शनरी (Dictionary, जिसे associative array भी कहते हैं) की घोषणा करते समय एक समस्या का सामना किया। JavaScript में मैं ऐसा करता था:
```typescript
let dict = {};
dict["key1"] = "value1";
dict["key2"] = 123;
```
और यह काम करता था। लेकिन TypeScript में मुझे डिक्शनरी को सख्ती से टाइप करने की आवश्यकता है, जहाँ keys strings हैं और values numbers हैं। मैंने कई विकल्प आज़माए, लेकिन हर बार मुझे compilation errors या अजीब व्यवहार मिलता है।
विकल्प 1:
```typescript
let dict = {};
dict["apple"] = 5; // Error: Element implicitly has an 'any' type
```
विकल्प 2:
```typescript
let dict: object = {};
dict["apple"] = 5; // Error: Property 'apple' does not exist on type 'object'
```
विकल्प 3:
```typescript
let dict: { [key: string]: number } = {};
dict["apple"] = "text"; // मैं चाहता हूँ कि यह एक error हो, लेकिन...
// वास्तव में यहाँ error होगा, लेकिन हमेशा स्पष्ट नहीं होता कि सही तरीका क्या है।
```
मैं चाहता हूँ:
1. एक खाली डिक्शनरी घोषित करूँ जिसमें keys strings और values numbers हों।
2. आरंभ