何を私の下のコードで間違っていますか?TypeScriptから配列を拡張する
私のクラスMyNumberList
にArray
を拡張しようとしています。それを使用しようとしています。私が見ていることは、アイテムがリストに追加されていないように見えるということです。私はリスト要素にアクセスしようとするとundefined
が得られます。私は1.8.2
class MyNumberList extends Array<number> {
constructor(...numbers: number[]) {
// looks like this is not working
super(...numbers);
}
}
let statusCodes: MyNumberList = new MyNumberList(10, 20, 30);
console.log(statusCodes[0]); // printing undefined
console.log(statusCodes.length); // printing 0
本当に面白いです。あなたが言うことは理にかなっています。私はいくつかのドメイン固有の操作で 'Array'から継承した機能を拡張するファーストクラスのコレクションを作ろうとしていました。定期的な構文ではうまくいきません。 – codematix
help @ t-j-crowderに感謝します。 'this.push(... numbers) 'を呼び出す代わりにあなたの代わりに働いているようです。私は、他に何が壊れているかを知るためには、より深い切れ目を必要とするかもしれません。 TILは、TypeScriptを使用しているときに、JavaScriptコードを見て理解するのに良いアイデアです。 – codematix
偉大な研究、ソリューションは私のために働く – BobbyTables