这是我参与「第五届青训营 」伴学笔记创作活动的第4天。
一、本堂课重点内容
- TypeScript 简介
- 基本语法
- 高级类型
- 工程应用
二、详细知识点介绍
1、TypeScript 简介
ts发展历史
ts与js比较
js:动态类型,弱语言类型。
ts:静态类型,弱语言类型。
2、基本语法
- 基础数据类型:boolean、number、string、undefined、null等
- 对象类型:interface
- 函数类型 和 函数重载
- 数组类型:[类型 + 方括号]表示、泛型表示、元祖表示、接口表示
- 补充类型:空类型、任意类型、枚举类型
- 泛型
3、高级类型
- 联合/交叉类型:| &
- 类型保护与类型守卫:as
- 高级类型与函数返回值类型
4、工程应用
web
node
三、实践练习例子
function fn<A>(a: A): A {
return a;
}
fn(10); //不指定泛型,自动对类型判断
fn<string>("hellow"); //指定泛型
//多个
function fn2<A, B>(a: A, b: B) {}
//限制泛型
interface Inter {
length: number;
}
// T extends Inter 表示泛型T必须实现类(子类)
function fn3<T extends Inter>(a: T): void {
console.log(a);
}
fn3("123");
fn3({ length: 10 });
// fn3({ name: '10 '});没有length属性
// fn(123); 没有length属性
//类
class Myclass<T> {
constructor(name: T) {}
}
let per = new Myclass<string>("123");
四、课后个人总结
本次课程学习到了ts各种语法和高级类型,在项目中需要渐渐适应使用ts。