下载
npm i -g typescript
编译成js文件
tsc '文件名'
vscode配置typescript
- 新建文件一个文件夹,进行初始化tsconfig.json 。cdm运行
tsc --init
- 设置生成路径
"outDir": "./js"
(这里生成路径可根据自己需要更改); - 在vscode中导航栏选择“终端–>运行任务–>监视tsconfig.json”及可在上一步配置的路径下编译出js文件
typescript类型校验
- 布尔类型(boolean)
let bool:boolean = true;
console.log(bool); // true
- 数字类型(number)
let num:number = 3;
console.log(num); // 3
- 字符转类型(string)
let str:string = 'sss';
console.log(str); // sss
- 数组类型(array)
// 第一种定义方法(每项都为number)
let arr1:number[] = [11,22,33];
// 第二种定义方法(每项都为string)
let arr2:Array<string> = ['a','b','c'];
// 第三种定义方法(每项可为任意类型)
let arr3:any[] = [123,'aaa',true];
- 元祖类型(tuple)
// 对应位数对应类型
let arr:[number,string] = [123,'str']
- 枚举类型(enum)
// 如果不赋值,默认值为下标
enum Flag {success=1,'err'=0};
let f:Flag = Flag.success;
console.log(f) // 1
- 任意类型(any)
// 可以设置任何的类型
let oBox:any = document.getElementById('box');
- null 和 undefined是 其他(never类型)的子类型
let num:number | undefined
console.log(num) // undefined 不报错
num = 123;
console.log(num) // 123
- void类型:typescript中的void表示没有任何类型,一般用于定义方法的时候方法没有返回值。
// 方法没有返回任何类型
function run():void{
console.log('run')
}
// 方法返回number类型
function numf():number{
return 123
}
9.never类型:是其他类型(包括null和undefined)的子类型,代表从不会出现的值(通常表现为抛出异常或无法执行到终点)
let a: never;
let b: number;
// 运行错误,数字类型不能转为 never 类型
a = 123;
// 运行正确,never 类型可以赋值给 never类型
a = (()=>{ throw new Error('exception')})();