TypeScriptでのタプルの使い方と実践テクニックを解説

2023.10.27 に更新記事は 4 分で読めます
サムネイル画像

この記事ではTypeScriptを使用している方なら一度は聞いたことがある「タプル」について詳しく紹介します。

この記事を最後まで読むとタプルの基本から実際の開発での活用方法まで、しっかりと掴むことができるようになります!

タプルとは?

まず、タプルとは 固定の長さと各要素の型が指定された配列 のようなものです。

let myTuple: [string, number, boolean] = ["Hoge", 123, true];

このコードでは myTuple は文字列、数値、真偽値の3つの要素を持つタプルとして宣言されています。
型が固定されているため、異なる型のデータを間違って格納する心配がないのが特徴ですね。

タプルの使い方

次にタプルの使い方について解説します。

タプルの使い方は普通の配列と非常に似ていますが、それぞれの位置に対して特定の型を持つ点が異なります。

let person: [string, number] = ["太郎", 25];
console.log(person[0]);  // 太郎
console.log(person[1]);  // 25

上記のコード例では person という変数に文字列の名前と数値の年齢を持つタプルを格納しています。
その後、各要素を取り出してログに表示しています。
思ったより簡単ですね!

なぜタプルを使うのか?

illust

タプルを使用する最大の理由はその安全性と柔軟性にあります。
以下にそのメリットとデメリットをいくつか挙げてみます。

メリット

  • 型安全性: タプルは型と長さが固定なのでデータの不整合を早期に発見できます。
  • 明確な意図: タプルを使うことでどの型を使用するかなど開発者の意図を明確に伝えることができます。

デメリット

  • 柔軟性の欠如: 長さや型が固定のため柔軟なデータ管理は難しいです。
  • 過度な使用: あらゆる場面でタプルを使用することは柔軟性にかけるため必要な場面のみ使用するのが良いと思います。

タプルを使う場面

では、どのような場面でタプルを使用するのが最適でしょうか?
例として、関数が2Dの座標を返す場面を想定してみます。

function getCoordinates(): [number, number] {
    return [12.34, 56.78];
}

この関数 getCoordinates は緯度と経度をタプルとして返しています。
この場合、タプルを使うことで座標の型と順番が明確になり、他のデータと混同することなく扱うことができます。

データの順番や厳密に型定義したい場合に最適ということですね!

まとめ

タプルはTypeScriptの中で非常に強力な機能の1つです。

型の安全性を重視するTypeScriptの中では特にその特性を活かすことができます。
日々の開発の中でこのタプルをうまく活用して、より品質の高いコードを書き上げてください!

プロフィールアイコン

Syuu

フロントエンドが好きなWEBエンジニア Next.js / React / TypeScript

SHARE