DRILL 05 / 安全な分岐
ユニオン型と型の絞り込み
複数の型を受け取る関数で、実行時の判定から安全に処理を分けます。
YOUR TASK
normalizeId() を完成させる
文字列または数値のIDを表示用に正規化してください。数値は先頭に # を付け、文字列は前後の空白を除いて大文字にします。
- 入力
- id は string または number です。
- 出力
- 数値なら `#42`、文字列なら `USER-42` のような文字列を返します。
SYNTAX RECALL
確認する構文
function print(value: string | number): string {
if (typeof value === "number") {
return value.toFixed(0);
}
return value.trim();
} - | で受け取れる型を列挙する
- typeof で現在の型を判定する
- 分岐後の型に対応するメソッドを使う
STEPWISE HINTS
ヒント
01考え方の方向
まず `typeof id === "number"` を判定します。
02使うデータ構造
number の分岐ではテンプレート文字列で # を付けます。
03擬似コード
string の分岐では trim() の後に toUpperCase() を呼びます。
AFTER ACCEPTED
解説
AC 後に解説が開きます
まずは自分の言葉で方針を説明し、コードに落としてみましょう。