TypeScript 为 Null 或未定义

NN_*_*NN_ 3 typescript

我如何输入这样的函数?

function isNullOrUndefined(obj: any) {
  return typeof obj === "undefined" || obj === null;
}
Run Code Online (Sandbox Code Playgroud)

如果我返回任何内容,则意味着它可能仍然为空或未定义。我想这样使用它:

let a: string | null | undefined = undefined;
if (!isNullOrUndefined(a)) {
    const b: string = a;
}
Run Code Online (Sandbox Code Playgroud)

NN_*_*NN_ 7

成立 !

function isNullOrUndefined<T>(obj: T | null | undefined): obj is null | undefined {
    return typeof obj === "undefined" || obj === null;
}
Run Code Online (Sandbox Code Playgroud)