2013-07-15 109 views
25

您可以像使用c#一样定义安全类型的泛型吗?使用类型安全定义打字稿泛型

E.g.

public bool Foo<T>() where T : struct { /* */ } 

Typescript现在有泛型,但我可以执行类似的操作吗?

谢谢。

回答

57

好了,似乎你可以这样做:

Foo<T extends IBar>() { /* */ } 

这似乎让所有的呼叫需要吨至实施IBar

+4

+1 - 现货。这取自泛型的Java实现 - “extends”关键字用于约束接口或类。 – Fenton

+0

但它似乎还没有执行任何事情。 – Tarion

+1

请注意,如果您想通过接口进行约束,请使用'extends'关键字而不是'implements'。例如'Foo '。 –