TypeScript体验
date
Jan 30, 2019
slug
TypeScript体验
status
Published
tags
TypeScript
summary
type
Post
背景和简介
TypeScript是javascript的一个超集,通过编译的形式,扩展了JavaScript的功能特性(类似于CoffeScript)。
TypeScript的作者,也是是C#的作者,很多高级特性,有借鉴C#。
重要特性
- 支持静态类型,这是TypeScript的最大优势。支持静态类型,就可以做到类型检查,可以明确预知参数和返回值类型,这对于大型项目来说,大大降低了因类型导致的错误概率。
JavaScript在现代语言中,设计上偏随意,比如动态类型、var变量的作用域、嵌套函数、匿名函数等设计,特别是动态类型,在前端走向工程化的过程中广受诟病(包括JavaScript的作者,都表示JavaScript不是成功的语言)。 不过也有人喜欢JavaScript的这种非常大的灵活度。
- 增加了很多高级特性语法糖,比如接口、泛型、枚举、迭代器、混淆,还有后端语言中非常方便的装饰器等。
优缺点
- 优点,静态类型,类型检查和预知,大型项目减少出错概率。
- 优点,高级特性语法糖,易于编写高级功能。
- 代码更加接近后端面向对象语言,前后端更趋一致。
- 模块依赖时,接口信息更明确。
- 缺点,和后端面向对象语言一样,会存在过度设计的可能。
- 缺点,代码量相比JavaScript会多一些。