当数组必须是一种类型时,为什么 flowjs 不会在空数组上抛出错误?
Why flowjs doesn't throw error on empty array when array must be of a type?
无法理解为什么以下代码会通过流检查:
type Foo = "A" | "B" | "C"
const myFoo: Array<Foo> = []
Array<Foo>
不是强制数组具有某些 Foo
类型吗?
我有点糊涂
类型Array<Foo>
意味着数组中的所有元素必须具有类型Foo
。对于空数组 []
也是如此:此数组中的所有元素都具有类型 Foo
。恰好数组中没有元素。 Flow 将强制所有添加到数组的元素都是 Foo
.
类型
无法理解为什么以下代码会通过流检查:
type Foo = "A" | "B" | "C"
const myFoo: Array<Foo> = []
Array<Foo>
不是强制数组具有某些 Foo
类型吗?
我有点糊涂
类型Array<Foo>
意味着数组中的所有元素必须具有类型Foo
。对于空数组 []
也是如此:此数组中的所有元素都具有类型 Foo
。恰好数组中没有元素。 Flow 将强制所有添加到数组的元素都是 Foo
.