typeScript学习-TS类型-其他特殊类型-never

发布时间 2023-08-11 10:06:47作者: 空白格k

typeScript学习

其他特殊类型:

any, unknown, never, void, 元组(tuple), 可变元组

never:

// dataFlowAnalysisWithNever 方法穷尽了 DataFlow 的所有可能类型。
// 使用 never 避免出现未来扩展新的类没有对应类型的实现,目的就是写出类型绝对安全的代码。
type DataFlow = string | number

// type DataFlow = string | number | boolean
function dataFlowAnalysisWithNever(dataFlow:DataFlow){
  if(typeof dataFlow === 'string'){
    console.log("字符串类型:",dataFlow.length)
  }else if(typeof dataFlow === 'number'){
    console.log("数值类型:",dataFlow.toFixed(2))
  }else{
    // 当前 data 为 never 类型
    let data = dataFlow  
  }
}
dataFlowAnalysisWithNever(
"abc") dataFlowAnalysisWithNever(3.1415926)