UNIT 2 Skill Tree

DRILL 04 / コレクション

オブジェクト型と省略可能なプロパティ

type で値の形を定義し、省略される値へ安全な代替値を用意します。

目安 10分 TypeScript type alias / object

YOUR TASK

displayUser() を完成させる

ユーザーの表示名と役割を `表示名 [role]` の形式で返してください。nickname がない場合は name を表示名にします。

入力
user は name、role、任意の nickname を持つオブジェクトです。
出力
nickname を優先した表示用文字列を返します。

SYNTAX RECALL

確認する構文

type User = {
  name: string;
  nickname?: string;
};

const label = user.nickname ?? user.name;
  • オブジェクトの形を type で定義する
  • ? で省略可能なプロパティを表す
  • ?? で undefined の場合だけ代替値を使う

STEPWISE HINTS

ヒント

01考え方の方向

nickname の型には `?` を付けます。

02使うデータ構造

`nickname ?? name` は nickname が undefined の場合に name を選びます。

03擬似コード

選んだ表示名と role をテンプレート文字列へ入れます。

AFTER ACCEPTED

解説

AC 後に解説が開きます

まずは自分の言葉で方針を説明し、コードに落としてみましょう。