スキップしてメイン コンテンツに移動

Typescript 残余引数

 TypeScriptにおける「残余引数」(Rest Parameters)は、関数のパラメータとして、可変個数の引数を受け取るための仕組みです。関数の定義において、残余引数を表すために `...` 演算子を使用します。これにより、関数呼び出し時に指定された引数のうち、先頭のいくつかを通常のパラメータとして処理し、残りの引数を配列として受け取ることができます。


以下は、残余引数の基本的な使い方を示した TypeScript の例です:


```typescript

function sumAllNumbers(...numbers: number[]): number {

    return numbers.reduce((sum, num) => sum + num, 0);

}


const result1 = sumAllNumbers(1, 2, 3, 4, 5);

console.log(result1); // 15


const result2 = sumAllNumbers(10, 20);

console.log(result2); // 30

```


この例では、`sumAllNumbers`関数が残余引数 `...numbers` を受け取っています。関数内では、この残余引数 `numbers` は通常の配列として扱われます。関数呼び出し時に渡されたすべての引数が、`numbers` 配列にまとめられます。その後、配列の `reduce` メソッドを使って、与えられた数値の合計を計算しています。


残余引数を使うことで、可変個数の引数をスマートに扱うことができます。これは、同じ種類の引数を複数回呼び出す関数を作成したり、引数の数が事前にわからない場合に特に便利です。

コメント

このブログの人気の投稿

XMPPとは

XMPPとは、インスタントメッセージソフトなどに使われるXMLベースのオープンソース・プロトコルである。2004年に、IETF(Internet Engineering Task Force)でIMPP(Instant Messaging and Presence Protocol)の標準案に選ばれた。 Jabber社が開発したインスタントメッセージソフト「Jabber」のプロトコルを、セキュリティ機能などを追加して改良したものである。具体的な機能としては、インスタントメッセージソフトで必要不可欠となるメッセージの送受信や、プレゼンス状態の通知などを受け持っている。 XMPPは柔軟性や拡張性が高いのが特徴であり、JabberやGoogle Talkなどのインスタントメッセージソフトで採用されている。 XMPPを使っているサービスの例はCERN、アメリカの軍事衛星、BBC News、MLB、DuckDuckGoなどがある。また、SlackやHipchatなどのXMPP連携を行うコミュニケーションサービスも数多くある。 時間があれば、ぜひ使ってみたいと思います。