面试题答案
一键面试自定义类型保护概念
在TypeScript中,类型保护是一种运行时检查机制,它允许我们在代码执行过程中缩小变量的类型范围。自定义类型保护则是开发者根据特定逻辑自定义的用于缩小类型范围的函数。这些函数返回一个类型谓词,用于明确某个变量属于特定类型。
示例 - 判断变量是否为字符串类型的自定义类型保护函数
function isString(value: any): value is string {
return typeof value ==='string';
}
let myVar: string | number;
myVar = "Hello";
if (isString(myVar)) {
console.log(myVar.length); // 此时TypeScript知道myVar是字符串类型,可访问length属性
} else {
console.log(myVar.toFixed(2)); // 若不是字符串类型,可按number类型处理
}