typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型
布尔类型(boolean)
数字类型(number)
字符串类型(string)
数组类型(array)
元组类型(tuple)
枚举类型(enum)
任意类型(any)
null 和 undefined
void类型
never类
1 布尔类型(boolean)
//es5 中的写法
var boo=true;
boo="fff";
报错了 表示 fff不是boolean 类型
记住重点:写Ts代码指定类型
var flag:boolean=true;
// flag=123; //错误
flag=false; //正确
console.log(flag);
2 依次类推 数字类型(number)
/*
var num:number=123;
num=456;
console.log(num); /正确/
num='str'; //错误
*/
3 字符串类型
// 字符串类型(string)
var str:string='this is ts';
str='haha'; //正确
str=true; //错误
4 数组类型 两种方式
var arr:number[]=[1,2];
var arr1:Array<number> = [1,2];
5 元组类型(tuple) 属于数组的一种
// 元组类型(tuple) 属于数组的一种
var arr:Array<number>=[11,22,33];
console.log(arr)
//元祖类型
let arr:[number,string]=[123,'this is ts'];
console.log(arr);
6 枚举类型(enum)
随着计算机的不断普及,程序不仅只用于数值计算,还更广泛地用于处理非数值的数据。
例如:性别、月份、星期几、颜色、单位名、学历、职业等,都不是数值数据。
在其它程序设计语言中,一般用一个数值来代表某一状态,这种处理方法不直观,易读性差。
如果能在程序中用自然语言中有相应含义的单词来代表某一状态,则程序就很容易阅读和理解。
也就是说,事先考虑到某一变量可能取的值,尽量用自然语言中含义清楚的单词来表示它的每一个值,
这种方法称为枚举方法,用这种方法定义的类型称枚举类型。
enum 枚举名{
标识符[=整型常数],
标识符[=整型常数],
...
标识符[=整型常数],
} ;
enum test {success=0,error=2};
let s:test=test.success;//2
let e:test=test.error;//0
7 任意类型(any)
var an:any="fff"
an=11; //不会报错
8 void类型 :typescript中的void表示没有任何类型,一般用于定义方法的时候方法没有返回值。
9 Never
never类型表示的是那些永不存在的值的类型。 例如, never类型是那些总是会抛出异常或根本就不会有返回值的函数表达式或箭头函数表达式的返回值类型; 变量也可能是 never类型,当它们被永不为真的类型保护所约束时。
never类型是任何类型的子类型,也可以赋值给任何类型;然而,没有类型是never的子类型或可以赋值给never类型(除了never本身之外)。 即使 any也不可以赋值给never