Annonce de TypeScript 4.0
(devblogs.microsoft.com)<p>- Prise en charge des types de tuple variadiques*<br />
→ Possibilité d’utiliser le spread sur des types génériques <br />
→ L’opérateur `...` peut aussi apparaître au milieu. <br />
- Prise en charge des labels pour les tuples<br />
- Ajout des opérateurs `&&=`, `||=`, `??=` <br />
- Le type de `catch` peut être défini comme `unknown` ou `any` <br />
→ Avec `unknown`, cela indique explicitement qu’il faut impérativement faire une vérification de type avec `typeof`/`instanceof`, etc. avant le traitement<br />
- Avec JSX, personnalisation possible via `jsxFragmentFactory`<br />
- Inférence possible du type des propriétés à partir du constructeur<br />
- Même avec l’option `--noEmitOnError`, mise en cache du résultat de compilation précédent pour améliorer la vitesse de build <br />
- `-incremental` et `--noEmit` peuvent être utilisés ensemble <br />
<br />
Améliorations de l’éditeur (Visual Studio Code)<br />
- Fonction de conversion automatique pour Optional Chaining et Nullish Coalescing<br />
- Prise en charge de `/** @deprecated */`<br />
- Prise en charge du Partial Semantic Mode au démarrage — exécution d’un serveur léger appliqué uniquement à certains fichiers de code ouverts afin de réduire le temps nécessaire au chargement des gros projets<br />
- Fonction Auto-Import plus intelligente <br />
<br />
Breaking Changes <br />
- Modification des types liés au DOM dans `lib.d.ts` <br />
→ Suppression de `document.origin` et recommandation d’utiliser `self.origin` <br />
- Une erreur est désormais toujours affichée lors de l’override des getter/setter de la classe parente <br />
- Quand `strictNullChecks` est activé, l’opérande de `delete` doit être `any`, `unknown`, `never` ou optionnel<br />
<br />
* Variadique : signifie qu’une fonction accepte un nombre non fixe d’arguments. Ex. : les arguments de `printf`</p>
1 commentaires