Functional
undefined: ?? で値がない場合だけ既定値を選ぶ
nullish coalescing は null または undefined のときだけ既定値を使います。
SourcedisplayNames.ts
Node.js 22
export function displayName(name: string | undefined): string {
return name ?? "guest";
}TestdisplayNames.test.ts
Node.js 22
import assert from "node:assert/strict";
import test from "node:test";
import { displayName } from "../../src/nullable/displayNames.js";
test("undefinedの値は既定の表示名を返す", () => {
assert.equal(displayName("Ada"), "Ada");
assert.equal(displayName(undefined), "guest");
});01Assertion
このテストで確認できること
- 値がある場合はその値を返す
- undefined の場合は既定値を返す
Optional の代わりに T | undefined を使う場面では、?? が「不在時の既定値」を読みやすく表します。
OBSERVED RESULT
expected: displayName(undefined) → guest
actual: guest