TypeScript言語の主な関心事の1つであるIMO は、既存のバニラJavaScriptコードをサポートすることです。一見した印象です。完全に有効な次のJavaScript関数を見てください。
注:私はこのアプローチが好きだと言っているのではありません。これは有効なJavaScriptコードです。
function sum(numbers) {
var agregatedNumber = 0;
for(var i = 0; i < arguments.length; i++) {
agregatedNumber += arguments[i];
}
return agregatedNumber;
}
したがって、この関数は任意の数の引数とともに使用します。
console.log(sum(1, 5, 10, 15, 20));
ただし、これをTypeScript Playgroundで試してみると、コンパイル時にエラーが発生します。
これはバグだと思います。互換性の問題はないとします。次に、このタイプの関数をオープンエンドの引数で記述する方法はありますか?以下のようなparamsC#での機能?
numbersパラメーターがあるのですか?あなたはそれで何もしていません。