说明
尚硅谷TypeScript教程(李立超老师TS新课)学习笔记。
类型声明
- 类型声明是TS非常重要的一个特点
- 通过类型声明可以指定TS中变量(参数、形参)的类型
- 指定类型后,当为变量赋值时,TS编译器会自动检查值是否符合类型声明,符合则赋值,否则报错
- 简而言之,类型声明给变量设置了类型,使得变量只能存储某种类型的值
语法:
let 变量:类型; let 变量:类型 = 值; function fn(参数:类型,参数:类型):类型{ }
自动类型判断
- TS拥有自动的类型判断机制
- 当对变量的声明和赋值是同时进行的,TS编译器会自动判断变量的类型
- 所以如果你的变量的声明和赋值时同时进行的,可以省略掉类型声明
例子
新建 02.basis.ts
文件
// 声明一个变量a,同时指定它的类型为number let a: number; // a的类型设置为了number, 在以后的使用过程中a的值只能是数字 a = 10; a = 33; a = 'hello'; // 此行代码会报错,因为变量a的类型是number, 不能赋值字符明 let b: string; b = 'hello'; b = 123; // 不能将类型“number”分配给类型“string”。 // 声明完变量直接进行赋值 // let c: boolean = false; // 如果变量的声明和赋值是同时进行的,TS 可以自动对变量进行类型检测 let c = false; c = true; c = '111'; // 不能将类型“string”分配给类型“boolean”。 // JS 中的两数是不考虑参数的类型和个数的 // function sum(a, b){ // return a + b; // } // console.log(sum(123, 456)); // 579 // console. log(sum(123, "456")); // "123456" // 参数以及返回值需要时数字 function sum(a: number, b: number): number{ return a + b; } console.log(sum(123, 456)); // 579 console. log(sum(123, "456")); // "123456" 类型“string”的参数不能赋给类型“number”的参数。
执行 tsc
tsc 02.basis.ts