Déclaration et initialisation d'un dictionnaire (Dictionary) en TypeScript
Bonjour collègues ! Je suis nouveau en TypeScript (avant j'écrivais en JS pur) et j'ai rencontré un problème lors de la déclaration d'un dictionnaire (Dictionary, aussi appelé tableau associatif). En JavaScript, je faisais ceci :
```typescript
let dict = {};
dict["key1"] = "value1";
dict["key2"] = 123;
```
Et tout fonctionnait. Mais en TypeScript, j'ai besoin de typer strictement le dictionnaire, où les clés sont des chaînes et les valeurs des nombres. J'ai essayé plusieurs options, mais j'obtiens à chaque fois des erreurs de compilation ou un comportement étrange.
Option 1 :
```typescript
let dict = {};
dict["apple"] = 5; // Error: Element implicitly has an 'any' type
```
Option 2 :
```typescript
let dict: object = {};
dict["apple"] = 5; // Error: Property 'apple' does not exist on type 'object'
```
Option 3 :
```typescript
let dict: { [key: string]: number } = {};
dict["apple"] = "text"; // Je veux que ce soit une erreur, mais...
// En fait, ici il y aura une erreur, mais ce n'est pas toujours clair comment faire correctement.
```
Je veux :
1. Déclarer un dictionnaire vide avec des clés de type string