数组类型在TS中可以使用多种方式,比较灵活

第一种【类型+方括号】表示方法 string[]

let fibonacci: number[] = [1, 1, 2, 3, 5]; //定义一个数值数组

数组中不允许出现其他的类型

let fibonacci: number[] = [1, '1', 2, 3, 5];

// Type 'string' is not assignable to type 'number'.

也对数组的方法进行了限制

let fibonacci: number[] = [1, 1, 2, 3, 5];
fibonacci.push('8');

// Argument of type '"8"' is not assignable to parameter of type 'number'.

第二种 数组泛型 Array<T>

let fibonacci: Array<number> = [1, 1, 2, 3, 5];

第三种 用接口表示数组

interface NumberArray {
    [index: number]: number;
}
let fibonacci: NumberArray = [1, 1, 2, 3, 5];

第四种 用接口表示数组

    let args: {
        [index: number]: number;
        length: number;
        callee: Function;
    } = arguments;
}