今天学习简单的体操入门
布尔值
在 TypeScript 中,使用 boolean 定义布尔值类型:
let isShow: boolean = false;
数值
使用 number 定义数值类型:
let a:number = 1;
字符串
使用string定义字符串类型:
let name:string = "xxx"
空值
JavaScript中空值常用(void 0 ===undefined),但在 TypeScript 中,可以用 void 表示没有任何返回值的函数:
function alertName(): void {
alert('My name is Tom');
}
声明一个 void 类型的变量没有什么用,因为你只能将它赋值为 undefined 和 null
let unusable: void = undefined;
Null 和 Undefined
在 TypeScript 中,可以使用 null 和 undefined 来定义这两个原始数据类型:
let u: undefined = undefined;
let n: null = null;
与 void 的区别是,undefined 和 null 是所有类型的子类型。也就是说 undefined 类型的变量,可以赋值给 number 类型的变量, void 类型的变量不能赋值给 number 类型的变量:
任意值(any)
any 类型,则允许被赋值为任意类型,此时不会对该对象进行ts的校验
unknown 未知类型
unknown 这个类型与 any 类型类似,可以设置任何的类型值,随后可以更改类型。因此,我们可以将变量先设置为字符串类型,然后再将其设置为数字类型,如果事先不检查类型,使用any类型,调用了不存在的方法,编译时不会报错,代码运行时才会发现错误。但是使用unknown 类型不一样,如果不进行类型判断,执行相关操作编译器就会报错。
never 类型
永远不存在的类型,never类型的ts不能复制给never类型,可以用来做枚举类型收窄。
在函数中使用返回值设置为never,看起来和void相似,但是其完全不一样。从字面意思上来说,表示一个从来不会有返回值的函数。
联合类型
联合类型(Union Types)表示取值可以为多种类型中的一种,使用 | 分隔每个类型。
let str:number|string=1