📜  typescript assert non null - TypeScript 代码示例

📅  最后修改于: 2022-03-11 14:48:31.494000             🧑  作者: Mango

代码示例1
interface Foo { bar(): void }
declare function getFoo(): Foo | undefined;

function assert(value: unknown): asserts value {
    if (value === undefined) {
        throw new Error('value must be defined');
    }
}

function test() {
    const foo = getFoo();
    // foo is Foo | undefined here
    assert(foo);
    // foo narrowed to Foo
    foo.bar();
}