数据类型的声明方式
布尔类型
var bool:boolean = true;
数字类型
var num:number = 123;
字符串类型
var str:string = '123';
数组类型
var arr:Array<number> = [1,2,3]; 尖括号内为数组内容的类型
var arr0:Array<any> = ['str',2,true];
var arr1:number[] = [1,2,3]; 中括号表示数组;前面的修饰表示类型
var arr2:any[] = ['str',1,true];
元组类型
tuple属于数组类型的一种
var arr:[number,boolean] = [1,true]; 必须要一一对应
枚举类型
enum Err{
undefined=1,
null,
"str" = 2 //此处值和null冲突竟然没有报错;
}
var e:Err = Err.null;
console.log(e)//2
var e1:Err = Err.undefined;
console.log(e1)//1
var e2:Err = Err.str;
console.log(e2)//2
//enum 后面自定义变量名;如果没有声明值;默认为下标、前面的声明了值之后后面的加1
任意类型
let an:any = 12;
任意类型
let an:any = 12;
undefined、null类型
let num:undefined ;
let num1:undefined ;
let num2:number | undefined;
let num3:undefined = undefined;
num2 = 1;
// let num7:null; 此处会报错;未声明为undefined;
let num5:null = null;
let num6:null | number | undefined;
console.log(num,num1,num2,num3,num5,num6)//undefined undefined 1 undefined null undefined;
num6 = null;
console.log(num6);//null
num6 = 55;
console.log(num6);//55
void类型
void即返回值;void表示没有返回值
function run():void{
console.log(123)
};
function main():number{
return 123;
}
never类型
never类型为其他类型(包含其他所有类型)的子类型;表示不会出现的
var a:never ;
a = function(){
throw new Error('err')
}()