Tuple とは
配列の一種ですが、**「要素の数」**と**「それぞれの位置の型」**が厳密に決まっているデータ構造です。
// 1番目が数値(number)、2番目が文字列(string)と決まっている配列
let user: [number, string] = [1, "田中"];
// ❌ エラー:順番が違う、あるいは型が違う
// user = ["田中", 1];
メリット
- データの並び順の保証: 「IDと名前」「座標(x, y)」のように、並び順に意味があるデータを安全に扱えます。
- 意図しない書き換えの防止:
通常の配列(
(number | string)[])では許される「数値の場所に文字列を入れる」といったミスを防げます。
いつ使うのか?
複数の異なる型の値をセットで返したい関数や、固定のデータ構造を軽量に扱いたい場合に便利です。
[!NOTE]
要素数が多くなる場合は、タプルよりも interface を使ったオブジェクト形式の方が、プロパティ名でアクセスできるため読みやすくなります。