场景再现:
由于我们 app 版本更新,有一个获取系统状态的函数进行了重构,为了兼容这个函数,我是这样设计代码的。(下面只是模拟场景的伪代码)
///老代码 返回一个 number 类型的1
function oldFn(){
return 1
}
///新代码 返回一个 sting 类型的 "1"
function newFn(){
return "1"
}
我在使用的地方是这样兼容的
function getVersion(){
if(newFn){
newFn()
}
else{
oldFn()
}
}
const appVersion =getVersion()
此时我的 appVersion
就是 string|number
类型的值。我之前在用到版本信息判断的地方就需要大改
之前
if(appVersion===1){do something}
现在
if(appVersion===1||appVersion==="1"){do something})
有没有什么好的建议或者 TS 类型断言来帮我简化这些地方呢?
直接统一成string