- TS简介
1.TS是js的超集(以js为基础构建的语言,对js进行扩展,在js的基础上增加许多功能)
2.基于ES6语法
3.提供类型系统(最主要的功能是:在js引入类型的概念(动态语言变成静态语言)
ts扩展了js并添加了类型,可以在支持js的平台中执行
不能被js解析器直接执行,需要转换编译成js文件才可以
- TS出现原因
1.解决js的缺点,js是弱类型语言,在代码没有执行之前类型是不确定的,没有类型的概念。
好处是:灵活;
坏处:在项目变大之后会增加程序员负担,因为在使用某一个属性变量的时候没法确定它的类型是什么。
变量加减法容易出错
- TS作用
1.提供超集编译期类型检查
2.增强了编辑器和IDE的功能:在代码类型赋值错误/调用了一个不存在的属性、变量的时候,能够进行提示,而不是把错误放到编译运行的时候让浏览器来告诉我们错了
- 优点
1.增加了代码的可读性、可维护性(∵TS主要增加的类型系统,实际上就是最好的文档,只需要看类型的定义就能知道如何去调用它)
2.在编译阶段就可以发现大部分错误,可以减少很多BUG
3.是js的超集:借助于js开源社区的力量
- 缺点
1.需要了解新知识点:接口、泛型、枚举
2.开发成本
3.第三方库不支持
- TS增加了什么?
1.类型(js中的类型只是对值而言,而ts是针对变量,还增加了新的类型)
2.完全支持js,ES6
3.添加ES不具备的新特性(抽象类、接口、工具……)
4.丰富的配置选项(严格/松散:如果需要兼容老版本的IE,那就可以编译成es3版本,不需要兼容老版本,也可以编译成es版本)
5.强大的开发工具,帮助编译器识别类型,提示错误
- TypeScript开发环境搭建
ts解析器需要node.js
