何をする書き方?
プロパティ名の後に?を書くと、その項目は省略できます。省略された値はundefinedになり得るため、使う前に確認するか、代わりの値を指定します。??はnullまたはundefinedのときに代わりの値を使います。
基本の形
type User = { nickname?: string };?プロパティを省略可能にする。undefined値が指定されていない状態。??null・undefinedに代わりの値を使う。短い例で確かめる
main.ts
type User = { nickname?: string };
const user: User = {};
console.log(user.nickname ?? "名無し");結果
名無し
準備・実行方法を確認する
JavaScriptの基本を学んでから取り組みましょう。TypeScript公式のPlaygroundに例を貼り付けると、型の確認と実行ができます。ブラウザーは通常 .ts を直接実行せず、JavaScriptに変換したものを実行します。
もう少し詳しいコードを見る
main.ts
type User = {
name: string;
nickname?: string;
};
const user: User = { name: "海" };
console.log(user.nickname ?? user.name);結果
海
自分で試すには
TypeScriptの公式Playgroundで、短い例を貼り付けて試せます。
TypeScript Playgroundを開く一問だけ、復習しよう
「省略できる項目」の書き方はどれ?
少し変えてみよう
userにnickname: "うみ"を加え、表示が切り替わることを確認しましょう。
つまずいたら、ここを確認
値が必ずあると思い込んで操作しないようにします。strictNullChecksを有効にすると見落としを検出しやすくなります。
自分の言葉でメモ
記録はこのブラウザーに保存されます。