【发布时间】:2018-10-26 23:08:49
【问题描述】:
假设我有以下代码:
interface A {
a: number;
}
interface B extends A {
b: number;
}
const b: B = {a: 1, b: 5};
const a: A = b as A;
现在变量a 的类型为A,但其中仍包含b。有时这是不可取的——我想确定,如果我有一个A 类型的变量,它具有A 类型的确切字段。我想知道,TypeScript 是否有某种“硬转换”,可以在类型之间转换时删除任何不需要的字段。
【问题讨论】:
-
TypeScript 不进行 any 转换或转换。而且它是结构化类型的,所以 “这东西不是 X,因为它有额外的字段” 并没有什么意义。
标签: typescript