多次元の型付き配列
CoddyのJavaScriptジャーニー「Introduction To TypeScript」セクションの一部。レッスン 19/73。
TypeScriptでは、完全な型安全性を備えた状態でこのような構造化データを扱うために、多次元配列を作成することができます。
多次元配列は、本質的には配列の配列です。最も一般的な例は2次元配列で、これはグリッドや行列として考えることができます。TypeScriptで2次元配列の型を定義するには、Type[][]構文を使用します:
let grid: number[][] = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
let gameBoard: string[][] = [
["X", "O", "X"],
["O", "X", "O"],
["X", "O", "X"]
];多次元配列の要素にアクセスするには、複数の角括弧を使用します。最初のインデックスで行を選択し、2番目のインデックスでその行内の列を選択します。
let matrix: number[][] = [[1, 2], [3, 4]];
console.log(matrix[0][1]); // 2 (1行目、2列目)
console.log(matrix[1][0]); // 3 (2行目、1列目)TypeScriptは、各内部配列に指定された型の要素のみが含まれることを保証します。これにより、通常の配列で得られるのと同じ型安全性の利点が得られますが、複雑なグリッド状のデータ構造でも動作するように拡張されています。
チャレンジ
簡単数値を保持できる gameGrid という名前の2次元配列を作成し、以下の値を持つ3x3の行列として初期化してください。
- 1行目:
1,2,3 - 2行目:
4,5,6 - 3行目:
7,8,9
文字列を保持できる chessBoard という名前の別の2次元配列を作成し、以下の値を持つ2x2の行列として初期化してください。
- 1行目:
"white","black" - 2行目:
"black","white"
gameGrid 配列の2行目、1列目の要素にアクセスして表示してください。
chessBoard 配列の1行目、2列目の要素にアクセスして表示してください。
各値を、上記の指定された順序で、それぞれ別の行に表示してください。
自分で試してみよう
// TODO: ここにコードを書いてください
// gameGrid 2D配列を作成します(1-9の数字を含む3x3行列)
// chessBoard 2D配列を作成します(文字列値を含む2x2行列)
// gameGridの2行目、1列目の要素にアクセスして出力します
// chessBoardの1行目、2列目の要素にアクセスして出力しますこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
Introduction To TypeScriptのすべてのレッスン
2基本の型
基本の型: str, num, boolean'any' 型: 脱出ハッチ'unknown' 型'null' と 'undef' の扱い型推論の実践明示的な型アノテーションまとめ:基本の型の演習5型:エイリアス、ユニオン型、インターセクション型
プリミティブ型の型エイリアスユニオン型 ('|')ユニオン型の扱い方リテラル型インターセクション型 ('&')型エイリアスの組み合わせまとめ:高度な型の組み合わせ自分で練習してみよう: TypeScriptプレイグラウンド