L'équipe TypeScript de Microsoft semble mettre les bouchées doubles depuis la mise en production du compilateur. La version 1.1 sortie il y a un mois et la version 1.3 encore toute récente, les fonctionnalités de la future version 1.4 viennent d'être présentées sur le blog officiel du langage. Elles sont déjà implémentées et sont en cours de test dans la branche principale du dépôt GitHub.
Alors que la version 1.3 se focalisait surtout sur l'enrichissement de l'API du compilateur afin d'améliorer son intégration dans les éditeurs et les environnements de développement intégré, la version 1.4 revient sur l'amélioration du langage en lui-même. En voici les principales nouveautés :
Unions de types
Une variable peut désormais être de plusieurs types hétérogènes.
Code : | Sélectionner tout |
1 2 3 4 | interface RunOptions { program: string; commandline: string[]|string; } |
Les conditions typeof et instanceof peuvent permettre à TypeScript d’aiguiller le type d'une variable pendant l'exécution.
Code : | Sélectionner tout |
1 2 3 4 5 6 | var x: any = /* ... */; if(typeof x === 'string') { console.log(x.subtr(1)); // Error, 'subtr' does not exist on 'string' } // x is still any here x.unknown(); // OK |
Il est possible de donner un nom personnalisé à un type ou à une union de type.
Code : | Sélectionner tout |
1 2 3 4 | type PrimitiveArray = Array<string|number|boolean>; type MyNumber = number; type NgScope = ng.IScope; type Callback = () => void; |
L'inférence de type, notamment concernant les tableaux, a été améliorée.
Source : présentation officielle
Et vous ?
Ces nouvelles fonctionnalités vous seront-elles utiles ?