为什么此代码未引发任何Typescript错误(请参见TS playground):
interface ErrorData {
code: number;
message: string;
}
interface EnrichedError {
description: string;
error: ErrorData;
}
const a: any = "bla bla bla";
const b: EnrichedError = {
description: 'this is a test',
error: a
}
为什么可以将b.error
设置为a?
答案 0 :(得分:2)
因为这就是any
的重点,所以它可以分配给所有类型,并且所有类型都可以分配给它。
这是您的逃生舱口,它基本上告诉TypeScript“此值可以随处可见”