文章第一句话为“这是我参与「第五届青训营 」伴学笔记创作活动的第 4 天
一、本堂课重点内容:
TypeScript 是 JavaScript 的语法超集,它添加了静态类型,近几年的发展中,也受到诸多开发者的喜爱。Typescript 的社区逐渐壮大,日趋完善,为越来越多前端开发者提供服务,本节课将主要为同学解读 TypeScript 的优势。
二、详细知识点介绍:
TS与JS的比较
- JS是动态类型、弱类型语言
- TS是静态类型、弱类型语言
- 动态类型的语言是在运行代码时才会编译, 而静态类型语言则是在运行前提前编译,这样显而易见的是如果有代码错误,ts会提前曝出。
- 弱类型语言则是对数据类型的操作要求较低,比如我们在js中将字符型和整数型数据相加不会报错,但在C中却会编译错误。
TS的优势
- 静态类型的优势
- 可读性增强:基于语法解析TSDoc,ide增强
- 可维护性增强:在编译阶段暴露大部分错误 => 多人合作的大型项目中,获得更好的稳定性和开发效率
- JS的超集
- 包含于兼容所有Js特性,支持共存
- 支持渐进式引入与升级
三、实践练习例子:
- ts和js相比,要提前声明数据的类型,函数的类型和参数也是包括在内的
const q = 'string';// const q: string = 'string';
const w = 1; //const w: number = 1;
const e = true;// const e: boolean =true;
const r = null; //const r: null =null;
const t = undefined;// const t:undefined = undefined;
/*数组*/
type IArr1 = number[];
const arr1: IArr1 =[1,2,3,4,5,6];
type IArr2 = Array< string | number | Readonly<boolean>>;
const arr2: IArray = [1,2,'3','4',true];
function add(x:number, y:number):number{
return x + y;
}
四、课后个人总结:
TS是未来的趋势,千里之行始于足下。JS和TS可以对比类比学习。