void = array[1];
if (value !== undefined) {
// number
}
$ReadOnlyArray<T>
这个可以标记一个只能读 不能写的数组
// @flow
const readonlyArray: $ReadOnlyArray\<number> = [1, 2, 3]但是引用类型还是可以写的
// @flow
const readonlyArray: $ReadOnlyArray<{x: number}> = [{x: 1}];
readonlyArray[0] = {x: 42}; // Error!
readonlyArray[0].x = 42; // OKtuple types
这是一种新的类型, 是一种短的列表,但是时又限制的集合,在 javascript 中这个用数组来声明
// 一个类型对应一个 item
let tuple1: [number] = [1];
let tuple2: [number, boolean] = [1, true];
let tuple3: [number, boolean, string] = [1, true, "three"];可以把取出的值 赋值给具有一样类型的变量, 如果index 超出了索引范围,那么就会返回undefined 在 flow 中也就是 void
// @flow
let tuple: [number, boolean, string] = [1, true, "three"];
let num : number = tuple[0]; // Works!
let bool : boolean = tuple[1]; // Works!
let str : string = tuple[2]; // Works!如果flow 不知道你要访问的时是那么类型, 那么他忽返回所有可能的类型,
// @flow
let tuple: [number, boolean, string] = [1, true, "three"];
function getItem(n: number) {
let val: number 关键词:javascript静态分类如何解析flow的用法(详细)