[英]TypeScript: augmenting built-in types
如何增加“內置”類型之一? 例如陣列?
在JS中,我會做類似的事情
Array.prototype.shuffle = function () { ... };
什么是TypeScript的等價物?
類型在TypeScript中是“開放式的”,因此您只需編寫:
interface Array {
shuffle: () => any; // <-- Whatever signature you want.
}
然后擴展類型以包含新函數(並且可以為其分配與簽名匹配的函數)。
但請注意,擴展內置類型(lib.d.ts中的那些類型 - 例如Array)在語言服務中當前存在問題,因為它在內部緩存這些因為性能原因。 我在http://typescript.codeplex.com/workitem/4上編寫的解決方法是為了在VS中的語言服務中擴展內置類型而沒有錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.