ts-数据类型

34 阅读1分钟
  • ts的类型注解来明确标识类型;
  • 类型注解的语法由一个冒号和某种具体类型组成;
  • 示例如下:
  1. 基础类型
const a:string = 'hello';
const num:number = 3;
const bool:boolean = true;
const bin:bigint = 10n;
const sym:symbol = Symbol();
const foo:undefined = undefined;
const foo:null = null;

  1. 复合类型
// 枚举类型
enum Season {
    Spring,
    Summer,
    Fall,
    Winter
}
// 接口
interface IBoy {
    name:string;
    age:number; // 属性签名
    getName():string; // 方法签名
    [key:string]: number; // 索引签名
}

// 对象类型
const obj:object = new Object();
  1. 容器类型
// 1.数组类型
const arr :string[] = [];
// 2.元组类型
const point:[number,number] = [0,0];
// 3.Map
const _map:Map = new Map([['a', 1]]);
// 4.Set
const _set:Set = new Set([1,2,3])
  1. 函数
// 1.调用签名
interface IAdd {
    (message?:string):string;
}
let add:IAdd;
add = (message?:string) => message;
// 1. 构造签名
interface IMaath {
  new(message:string):object;
};
let msg: IMaath;

msg = class {
   message:string;
  constructor(message:string) {
    this.message = message;
  }
}