typescript之基础变量

118 阅读2分钟

目前vue3+盛行,typescript(后称ts)也被许多人接受,vue3+也基于ts开发,基于此写两篇关于ts的基础开发
ts是js的一个超集,支持es6语法,所以用es6写ts也是没毛病的,但不建议这么做
ts基础类型:

任意类型: any; 数字类型: number; 字符串类型: string; 布尔类型: boolean; 数组类型; 元组; 枚举: enum; void; null; undefined; never

跟js差不太多,其中 any表示任意类型的值 数组类型和元组就是js的Array对象;
数组类型就是固定类型的Array对象,例:

// 声明变量为number类型的数组
let arr: number[] = [1, 2];
// 或者使用数组泛型声明
let arr: Array<number> = [1, 2];

元组就是不定类型的Array对象,例:

// 表示已知元素数量和类型的数组
let x: [string, number];
x = ['Runoob', 1];    // 运行正常

枚举: enum一般情况下在实际应用中很少用到,这里只做简单的介绍

// 开发过程中一般枚举只做常量枚举
enum Days {Sun, Mon, Tue}
console.log(Days) // {'0': 'Sun', '1': 'Mon', '2': 'Tue', Sun: 0, Mon: 1, Tue: 2}

never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。

ts变量命名规则

  • 变量名可以包含数字和字母;
  • 除了下划线 _ 和美元 $ 符号外,不能包含特殊字符,包括空格
  • 变量名不能以数字开头 声明变量初始值
// 任意类型: any; 数字类型: number; 字符串类型: string; 布尔类型: boolean;
let [变量名]: [类型];      // 值为undefined
let [变量名]: [类型] = 值; // 指定类型,指定值
let [变量名]              // 不指定类型,值为undefined
// 数组类型; 
// 声明变量为number类型的数组
let arr: number[] = [1, 2];
// 或者使用数组泛型声明
let arr: Array<number> = [1, 2];
// 元组;
// 表示已知元素数量和类型的数组
let x: [string, number];
x = ['Runoob', 1];    // 运行正常
x = [1, 'Runoob'];    // 运行报错