【发布时间】:2019-05-13 09:58:11
【问题描述】:
访问length 属性时出现错误。我知道我可以通过只检索一次对象然后执行undefined-check 来解决问题。或者简单地添加一个!。但我想了解为什么会发生这种情况,并找出是否有更好的解决方案。这是人为的例子:
type MyMap<K extends string> = { [key in K]: string|undefined }
const getValueLength = (tmp:MyMap<string>, key:string) => {
return tmp[key] !== undefined && tmp[key].length
}
我正在严格模式下运行 typescript 3.3。
Here is a similar question 问题是在另一个函数内部进行了检查,这不是这里的问题。
【问题讨论】:
标签: typescript strict