TypeScript

Prérequis

  • JavaScript (ES6, Import...)

  • Npm

Qu'est ce que c'est ?

Du Javascript avec des types statiques

interface User {
  id: number
  firstName: string
  lastName: string
  role: string
}
 
function updateUser(id: number, update: Partial<User>) {
  const user = getUser(id)
  const newUser = { ...user, ...update }
  saveUser(id, newUser)
}
 

Pourquoi ?

Limite les erreurs

Uncaught TypeError: Cannot read properties of undefined (reading 'toLowerCase')

Meilleure autocomplétion et documentation

Bien plus poussée que la JSDoc

Une cible simple

Le TypeScript peut être converti en
 ES3 ou ESNext

Les inconvénients ?

Un outil supplémentaire

L'écosystème JavaScript

On perd en flexibilité

Certaines fonctions sont difficile à typer

Code moins lisible

document.querySelector<HTMLInputElement|HTMLTextareaElement>(".form-control");

Avantages > Inconvénients

Peut être utilisé à différents niveaux

Comment l'utiliser ?

Conversion en JavaScript

  • Typescript (tsc)
  • Webpack (ts-loader) 
  • Parcel
  • ESBuild
  • Vite (via ESBuild)

C'est parti !

TypeScript

By Jonathan Boyer

TypeScript

  • 632