Menu
Coddy logo textTech

ジェネリック配列

CoddyのJavaScriptジャーニー「Introduction To TypeScript」セクションの一部 — レッスン 60/73。

TypeScriptにおいて、配列とジェネリクスは非常に相性よく機能します。以前に型定義された配列について学んだ際、配列が特定の型の要素のみを保持できることを指定するために T[] 構文を使用しました。ジェネリクスを使用すると、これと同じ概念を表現する別の方法が提供されます。

TypeScriptは、Array<T>形式を使用した、型指定された配列のための代替構文を提供しています。

// These two declarations are equivalent:
let numbers1: number[] = [1, 2, 3];
let numbers2: Array<number> = [1, 2, 3];

Array<T>構文は、配列を操作するジェネリック関数を扱う際に特に便利です。これにより、コードのジェネリックな性質がより明示的で読みやすくなります。特に、型安全性を維持しながらあらゆる型の配列を扱える関数を作成する場合に有効です。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

challenge icon

チャレンジ

簡単

任意の型の配列を受け取り、その最初の要素を返すか、配列が空の場合は undefined を返す、getFirstElement という名前のジェネリック関数を作成してください。

この関数は以下の条件を満たす必要があります:

  • ジェネリック型パラメータ T を使用すること
  • Array<T> 型の arr という名前のパラメータを1つ受け取ること
  • T 型の最初の要素、または undefined を返すこと
  • T | undefined という明示的な戻り値の型アノテーションを持つこと

Array<T> 構文を使用して、以下の配列を作成してください:

  • ["apple", "banana", "cherry"] を含む Array<string> 型の stringArray
  • [10, 20, 30, 40] を含む Array<number> 型の numberArray
  • [true, false, true] を含む Array<boolean> 型の booleanArray
  • 空の Array<string> 型の emptyStringArray

関数をテストし、以下の出力を表示してください:

  • stringArray を引数にして getFirstElement を呼び出した結果を表示する
  • numberArray を引数にして getFirstElement を呼び出した結果を表示する
  • booleanArray を引数にして getFirstElement を呼び出した結果を表示する
  • emptyStringArray を引数にして getFirstElement を呼び出した結果を表示する
  • ["single"] を含む新しい Array<string> を引数にして getFirstElement を呼び出した結果を表示する

チートシート

TypeScriptは、型指定された配列に対して2つの同等な構文を提供します。

// これらの2つの宣言は同等です:
let numbers1: number[] = [1, 2, 3];
let numbers2: Array<number> = [1, 2, 3];

Array<T>構文は、配列を操作するジェネリック関数を扱う際に特に便利であり、型安全性を維持しながら、コードのジェネリックな性質をより明示的で読みやすくします。

自分で試してみよう

// TODO: ここにコードを記述してください
// ジェネリック関数 getFirstElement を作成します

// Array<T> 構文を使用して必要な配列を作成します

// 関数をテストして結果を出力します
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Introduction To TypeScriptのすべてのレッスン