「組み込み」タイプの1つをどのように拡張しますか?例:アレイ?
JSでは、私は次のようなことをします
Array.prototype.shuffle = function () { ... };
TypeScriptで同等のものは何ですか?
「組み込み」タイプの1つをどのように拡張しますか?例:アレイ?
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の言語サービスでエラーなしに組み込み型を拡張します。