【发布时间】:2020-12-14 14:50:52
【问题描述】:
在下面的代码中,ab.bv 检查无法迭代 ab.bv。但是,它可以访问ab.bv 的元素。 if (ab.bv) 检查是否未检查 ab.bv 的无效性?
type B = {|
bv: ?B[],
|}
const c: B => void = n => {}
let ab: B = {bv: []}
if (ab.bv) {
for (const v2 in ab.bv) { // Error in ab.bv: cannot iterate using a `for...in` statement because array type [1] is not an object, null, or undefined. [invalid-in-rhs]
c({...ab})
}
c({...ab.bv[0]}) // Works
}
【问题讨论】:
标签: javascript functional-programming flowtype