sad Typescript数据类型一共有12个分别是
布尔类型
数字类型
数组类型
元组类型
null类型
undefined类型
any类型
void类型
never类型
组合类型
变量格式一:
let 变量名: 变量类型 = 初始化值;//尽量使用let关键字(虽然编译转换成ES5他还是有的var)
变量格式二:
let 变量名: 变量类型 | undefined;
变量名 = 变量值;
布尔类型
let flag: boolean = true;//赋值只能是boolean类型true或false
console.log(flag);
数字类型
let num: number = 888;//只能赋值为数字
console.log(num);
字符串类型
let str: string = "Hello,TypeScript";//只能赋值字符串
console.log(str);
数组类型
定义数组方式有两种:
第一种
let arr: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];//定义一个数字类型的数组不能有数字以外的元素
console.log(arr);
第二种
let arr: Array<number> = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
console.log(arr);
元组类型
元组类型属于数组中的一种,元组中的元素类型可以不保持一致
var Animal:[string,number]=['狮子',22]//正确
var Animal:[string,number]=['狮子','22']//报错
console.log(Animal)
枚举类型
枚举表示的是一个命名元素的集合,因而它能够使你的程序避免因编码的值显杂乱且难以维护
枚举类型的定义:
enum 枚举名 {
标识符[= 整型常数/字符串],
标识符[= 整型常数/字符串],
...
标识符[= 整型常数/字符串],
};
枚举类型的示例:
enum Flag {
success,
error,
overtime
};
let s: Flag = Flag.overtime;
console.log(s);//注意这里拿到的是下标值
这里有一个注意点如果在error=5的情况下打印结果将是6
代码解读:如果标识符没有赋值,它的值就是下标。
enum Flag {
success = 200,
error = 404,
overtime = 500
};
let s: Flag = Flag.overtime;
console.log(s);//500
代码解读:如果标识符已经赋值,它的值就是被赋的值。
null类型
let n: null = null;
undefined类型
let u: undefined = undefined;
any类型
TypeScript 中的 any 类型表示任意数据类型。
let user:any;
user='用户'
user=123
user=true
void类型
TypeScript 中的 void 类型表示没有任何类型,一般用于定义方法的时候方法没有返回值。
function success(): void {
console.log('执行成功了,我不需要返回值');//如果写了return则报错
}
never类型
TypeScript 中的 never 类型是任何类型的子类型,也可以赋值给任何类型,但是没有类型是 never 的子类型或可以赋值给 never 类型, 即使 any 类型也不可以赋值给never。这意味着声明 never 类型的变量只能被 never 类型所赋值。
function error(): never {
throw new Error('抛出错误了');
}
组合类型
TypeScript 中支持一个变量可以赋予多种不同的变量类型,多个变量类型使用 |
分隔。
let num: number | null | undefined;
num = 3;
console.log(num);
num = null;
console.log(num);
num = undefined;
console.log(num);