参考答案
- 使用 typeof 进行类型判断(这些缩小类型范围的技术都有助于TS基于控制流程下的类型分析)
function unknownToString(value: unknown): string { if (typeof value === "string") { return value; } return String(value); }
- 对 unknown 类型使用类型断言
要强制编译器信任类型为 unknown 的值为给定类型,则可以使用类型断言:
const value: unknown = "Hello World"; const foo: string = value; // Error const bar: string = value as string; // OK
断言错了时语法能通过检测,但是运行的时候就会报错了!
const value: unknown = "Hello World"; const bar: number = value as number; // runtime Error
正文结束
Ctrl + Enter