检查值是否不为 null 且不为 undefined(非空断言)
是 isNil 的逻辑取反。通过后 TS 从 T | null | undefined 中排除 null 和 undefined,收窄为 T。
T | null | undefined
null
undefined
T
— 待检查的值(类型为 T | null | undefined)
true 当且仅当 val 既非 null 也非 undefined,同时收窄为 T
true
const value: string | null | undefined = 'hello';if (isPresent(value)) { value.toUpperCase(); // value: string}isPresent(null); // falseisPresent(undefined); // false Copy
const value: string | null | undefined = 'hello';if (isPresent(value)) { value.toUpperCase(); // value: string}isPresent(null); // falseisPresent(undefined); // false
检查值是否不为 null 且不为 undefined(非空断言)
是 isNil 的逻辑取反。通过后 TS 从
T | null | undefined中排除null和undefined,收窄为T。