コース一覧
TypeScript型設計:オブジェクト・状態・ジェネリクス
第4章クイズ

TypeScript型設計:オブジェクト・状態・ジェネリクス

interface、optional property、readonly、union・リテラル型、型ガード、ジェネリクスを扱う全23レッスンの型設計コースです。Profile・Work・ApplicationStateを題材に、APIや画面で扱うデータと状態を壊れにくい型として設計します。既存JavaScriptプロジェクトの移行は次のコースで扱います。

1
オブジェクト型とinterface
01. interface15分
02. 省略可能なプロパティ15分
03. readonly15分
04. interfaceとtype15分
05. ネストした型15分
06. オブジェクト配列15分
07. つくる - Work型とProfile型20分
08. 第4章クイズ15分
2
union・リテラル型・型ガード
01. union型15分
02. リテラル型15分
03. 状態のunion15分
04. typeofで絞り込む15分
05. inと判別で絞り込む15分
06. 状態で表示を切り替える15分
07. つくる - 状態の型表現20分
08. 第5章クイズ15分
3
ジェネリクス入門
01. なぜジェネリクスか10分
02. ジェネリック関数15分
03. 配列を返す汎用関数15分
04. 制約付きジェネリクス15分
05. 組み込みのジェネリクス15分
06. つくる - 汎用フィルタ関数20分
07. 第6章クイズ15分

TypeScript型設計:オブジェクト・状態・ジェネリクス

01interface
02省略可能なプロパティ
03readonly
04interfaceとtype
05ネストした型
06オブジェクト配列
07つくる - Work型とProfile型
08第4章クイズ
09union型
10リテラル型
11状態のunion
12typeofで絞り込む
13inと判別で絞り込む
14状態で表示を切り替える
15つくる - 状態の型表現
16第5章クイズ
17なぜジェネリクスか
18ジェネリック関数
19配列を返す汎用関数
20制約付きジェネリクス
21組み込みのジェネリクス
22つくる - 汎用フィルタ関数
23第6章クイズ

第4章クイズ

クイズ1

次のコードでエラーになるのはどれですか。

TypeScript

interface Work { id: number; title: string; published: boolean; } const a: Work = { id: 1, title: "プロフィールサイト", published: true }; const b: Work = { id: 2, title: "自己紹介カード" }; const c: Work = { id: 3, title: "スキル一覧の表", published: false, tag: "HTML" };

クイズ2

url を省略可能にした次のコードで、work.url.length と書くとエラーになります。理由として正しいものはどれですか。

TypeScript

interface Work { id: number; title: string; url?: string; }

クイズ3

readonly について、正しい説明はどれですか。

TypeScript

interface Work { readonly id: number; title: string; }

クイズ4

interface と type の違いとして、正しいものはどれですか。

クイズ5

次のコードで titles に付く型はどれですか。

TypeScript

interface Work { readonly id: number; title: string; published: boolean; } const works: Work[] = [ { id: 1, title: "プロフィールサイト", published: true }, { id: 2, title: "自己紹介カード", published: false }, ]; const titles = works.filter((work) => work.published).map((work) => work.title);

未回答の問題は、不正解として正解と解説のみ表示します

ログインが必要です

クイズに回答するにはログインしてください。