2
我打算在打字稿上的高级类型的文档超过(这里找到:https://www.typescriptlang.org/docs/handbook/advanced-types.html),并将其提到的索引查询操作,获得以下为例:澄清索引类型查询运算符和extends关键字
function pluck<T, K extends keyof T>(o: T, names: K[]): T[K][] {
return names.map(n => o[n]);
}
我了解keyof
如何在对象T
上生成所有已知公共属性名称的联合,但我不完全明白extends
扮演的角色。我知道这是说K
必须是T
的有效属性,但为什么使用extends
而不是其他?另外,是否可以在Typescript中扩展工会,或者这更多的是泛型特有的语义?
谢谢。
作为后续问题,在Typescript文档中是否有更多讨论这个问题?我认为一些措辞可以消除任何混乱;尽管可能只有我的理解是有限的。 – Willwsharp
@Willwsharp查看“通用约束”部分:https://www.typescriptlang.org/docs/handbook/generics.html –
哦,我没有看到;非常感谢你。 – Willwsharp