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