编程语言的类型:
- 动态类型语言 (Dynamically Typed Language)
- 静态类型语言 (Statically Typed Language)
两种语言的含义及区别:
比如JS、python就是动态类型语言,什么是动态类型语言,通俗的讲,就是运行期间才会进行数据类型检查的语言,在用动态类型语言编程期间,我们不用给变量指定数据类型,可以是字符串,也可以给他赋值为数字,非常灵活。弊端就是我们用js编写的代码只有在运行的时候才能发现有啥错误。
静态语言就正好相反,他的数据类型检查发现在编译阶段 ,也就是写程序的时候需要声明变量的数据类型,例如:c、c++、c#、java都是静态类型语言的典型代表。
TS的含义:
(1)是type+JavaScript的组合,他的目标就是把不看重类型的动态语言变成关注类型的一个静态语言
(2)是以js为基础构建的语言
(3)一个js的超集
TS的特点:
- 静态类型风格的类型系统。
- 从es6到es10甚至是esnext的语法支持。
- 兼容各种浏览器,各种系统,各种服务器,完全开源。
- 可以在任何支持js的平台中执行
- ts扩展了js,并添加了类型
- ts不能被js解析器直接执行,例如xx.ts文件是不能在浏览器中直接执行的,需要编译为js
- 完全支持js,可以直接在ts文件中原封不动的写js也没问题,能够快速上手
TS的增加了什么:
- 类型,增加了js中没有的类型,例如元组、枚举等
- 支持es的新特性
- 添加es不具备的新特性,例如抽象类、接口、装饰器等
- 丰富的配置选项,可以配置是否严格,也可以配置最终编译的js的任意版本es3、es5、es2015、es6、es2020等,例如需要兼容老版本ie,那就编译为es3
- 强大的开发工具
为什么要使用Typescript?
1、程序更容易理解
- 比如:会出现函数或者方法输入输出的参数类型,外部条件等
- 动态语言的约束:需要手动调试,例如console、debug等去查看输出
- 有了ts,代码本身就可以回答上述问题,代码就是注释
2、效率更高
- 可以在不同的代码块和定义中进行跳转
- 代码自动补全,丰富的接口提示
3、更少的错误
- 编译期间能够发现大部分错误
- 杜绝一些比较常见错误
4、非常好的包容性
- 完全兼容js
- 第三方库可以单独编写类型文件
- 大多数项目都支持ts
下一篇内容具体讲解ts的数据类型~
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/149653.html