Blog: 2017 August

How to instantiate a generic type in TypeScript

August 1, 2017, Software Development

In C# we can define a generic type argument and instantiate this type at runtime: public class Factory { public T Create<T>() where T: new() { return new T(); } } var factory = new Factory(); var person = factory.Create<Person>(); But how would you write such a method in TypeScript? The main problem is, that the generic type argument T is not available at runtime because TypeScript generics are only used at compile time for type checking and removed in the transpiled JavaScript code. The best solution I came up with, is to pass the generic type as method argument […] Read more...


  Page 1 of 1