【发布时间】:2022-11-30 18:23:12
【问题描述】:
假设我们有以下代码:
class Foo<T = number> {
foo: T;
constructor(foo: T) {
this.foo = foo;
}
}
const F: typeof Foo<number> = Foo;
let f: unknown;
if (f instanceof F) {
f.foo; // 'any', why is this not a 'number'?
}
为什么 f 的类型是 Foo<any> 而不是 Foo<number>?我可以只使用instanceof 来完成这项工作还是必须使用type predicates function?
【问题讨论】:
标签: typescript typescript-generics