Penggunaan Tipe Kelas dalam Generik di TypeScript

Sebagai tipe generik, kita juga dapat menggunakan kelas. Hanya saja, kita perlu menetapkan tipe kelas menggunakan konstruktornya. Oleh karena itu, alih-alih parameter type:T, kita perlu menentukan type: {new(): T;}. Mari kita buat fungsi, yang pada gilirannya akan membuat pengguna baru dari kelas User:

typescriptfunction getUser <T> (type: { new (): T; }): T {
  return new type();
}

class User {
  constructor() {
    console.log('You create a new user!');
  }
}

let user: User = getUser(User);

Hasil dari kode yang dijalankan:

typescript'You create a new user!'