typescript中的数据类型
文章目录
在typescript中为了让代码编写的更规范、有利于维护,增加了类型校验;
布尔类型(boolean)
let flag: boolean = true;
let flag: boolean = 123; // 如果赋值其他类型会报错;
数字类型(number)
let num:number = 123;
字符串类型(string)
let str:string = 'string'
数组类型(array)
- 第一种
let arr: number = [] = [1, 2, 3, 4, 5, 6];
let arr: string = [] = ['html', 'css', 'javascript', 'typescript'];
- 第二种
let arr:Array<number> = [1,2,3,4,5];
let arr:Array<string> = ['html', 'css', 'javascript', 'typescript'];
元素类型(tuple)(可以指定数组中每个元素的类型)
let arr: [string, number, boolean] = ['typescript', 3.8, true];
枚举类型(enum)(主要用于标识状态,标记固定值)
- 第一种
enum Flag { boy = 1, girl = 0 };
let boy: Flag = Flag.boy;
let girl: Flag = Flag.bogirly;
- 第二种
const red:string = 'red';
const blue:string = 'blue';
const pink:string = 'pink'
enum Color { red, blue, pink };
console.log(Color.red) // 0 返回索引
console.log(Color[0]) // red 返回value
任意类型(any)
let num: any = 1; // 正确
let num: any = 'ts'; // 正确
let num: any = true; // 正确
let num: any = []; // 正确
null 和 undefined
- undefined
let str: string; // 会报错
let str:undefined; // 不会报错
let str:string | undefined // 不会报错
2.null
let str: string; // 会报错
let str: string | null | undefined; // 不会报错
voie类型(表示没有任何类型,一般用于定义方法的时候没有返回值)
function run ():void {
console.log('此方法没有返回值')
}
function fun():string {
return '此方法的返回值是string类型'
}
never类型(从来不会出现的值)
let nuo:never;
nuo = (()=>{
throw new Error('错误')
})