typescript学习04数组的类型

182 阅读1分钟

最常用的形式:
       [类型 + 方括号」来表示:

       let fibnaci: number[] = [1,2,3,5]        数组的一些方法的参数也会根据数组在定义时约定的类型进行限制

数组泛型:

       数组泛型(Array Generic)Array<elemType>
       let fibonacci: Array<number> = [1, 1, 2, 3, 5];

接口表示数组

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

       NumberArray 表示:只要索引的类型是数字时,那么值的类型必须是数字。
       一般不会这么做!但却常用来表示类数组,比如:

  function sum() {
    let args: number[] = arguments;
}

       arguments作为函数参数是一个类数组,不能用普通的数组的方式来描述,而应该用**接口**:

  function sum() {
    let args: {
        [index: number]: number;
        length: number;
        callee: Function;
    } = arguments;
  }
  // 或者
  function sum() {
   let args: IArguments = arguments
  } 
 
  // 常用的类数组都有自己的接口定义,如 IArguments, NodeList, HTMLCollection 等
  
   let allDiv: NodeList = document.querySelectorAll('div');

数组项为任意类型

        let list: any[] = ['xcatliu', 25, { website: 'http://xcatliu.com' }];