武夷 | TypeScript 是什么?
2020/2/22 11:02:47
本文主要是介绍武夷 | TypeScript 是什么?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
啦啦啦,我是武夷,一个不太会卖萌的码农。今天我们一起来聊一聊 TypeScript 是什么?
TypeScript 特性
- JavaScript that scales.(可伸缩的 JavaScript)
- A statically typed superset of JavaScript that compiles to plain Javascript. (编译为纯 Javascript 的静态类型 JavaScript 超集)
- Any browser. Any host. Any OS. (任何浏览器。任何主机。任何操作系统)
- Open Source. (开源)
- Great tools enabled by static types.(静态类型支持的强大工具)
JavaScript 版本之间的功能差距
版本 | 官方名称 | 发布日期 |
---|---|---|
ES9 | ES2018 | 2018年6月 |
ES8 | ES2017 | 2017年6月 |
ES7 | ES2016 | 2016年6月 |
ES6 | ES2015 | 2015年6月 |
ES5.1 | ES5.1 | 2011年6月 |
ES5 | ES5 | 2009年6月 |
ES4 | ES4 | 废弃 |
ES3 | ES3 | 1999年12月 |
ES2 | ES2 | 1998年6月 |
ES1 | ES1 | 1997年6月 |
所有浏览器中运行的 JavaScript 版本基于 ECMAScript3。版本 4 因为特性蠕动( feature creep )被取消了(他们试图一次添加很多特性)。虽然 ES5 是 JavaScript 的一个巨大版本,但是 ES2015 (也被称作 ES6 )也是 JavaScript 的重要更新。而 ES.Next 始终指 JavaScript 未来版本。
ES2015 ( ES6 ) 带来的重大特性
- Arrow functions(箭头函数)
- Promises
- Generators
- let 和 const
- Classes(类)
- Modules(模块)
- Multiline strings(多行字符串)
- Template literals(模板字面量)
- Default parameters(默认参数)
- The spread operator(展开操作符)
- Destructuring assignments(解构分配)
- Enhanced object literals(增强的对象字面量)
- for..of 循环
- Map 和 Set
ES2016(ES7) 的改进
- Array.prototype.includes
- 求幂运算符
ES2017(ES8)带来的重大新特性
- 字符串填充(padStart 和 padEnd)
- Object.values
- Object.entries
- Object.getOwnPropertyDescriptors()
- 函数参数列表和调用中的尾随逗号
- Async Functions (异步函数)
- 共享内存 和 Atomics
ES2018(ES9) 带来的重大新特性
- Rest(剩余)/Spread(展开) 属性
- Asynchronous iteration (异步迭代)
- Promise.prototype.finally()
- 先行断言(lookahead) 和 后行断言(lookbehind)
- Unicode 属性转义 \p{…} 和 \P{…}
- 命名捕获组(Named capturing groups)
- 正则表达式的 ‘s’ 标志
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
TypeScript 是 JavaScript 类型的超集,并且可以编译为纯 JavaScript。
TypeScript 遵循当前以及未来出现的 ECMAScript 规范。TypeScript 不仅能兼容现有的 JavaScript 代码,它也拥有兼容未来版本的 JavaScript 的能力。大多数 TypeScript 的新增特性 都是基于未来的 JavaScript 提案,这意味着许多 TypeScript 代码在将来很有可能会变成 ECMA 的标准.
TypeScript 数据榜
npm 下载量趋势图 (粒度:月)
RedMonk 编程语言排名: 2019 年 6 月
横坐标是 GitHub 上的人气排名,分析的 GitHub 部分的数据源是 GitHub Archive。
纵坐标是 Stack Overflow 上的人气排名。
RedMonk 一段时间内排名前 20 位的语言: 2019 年 6 月
下面是一个可视化图表,用于跟踪排名历史上前 20 种语言的调整。
2019 Stack Overflow 年度最受欢迎的编程语言
小结
今天我们学习到 JavaScript 各个版本之间功能差距与特性,TypeScript 也在兼容 JavaScript 方面很出色。了解到 TypeScript 近几年在各个领域的数据榜,潜力非常大,是一项非常值得学习的新技术。
这篇关于武夷 | TypeScript 是什么?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-29Elasticsearch慢查询日志配置
- 2024-05-29揭秘华为如此多成功项目的产品关键——Charter模板
- 2024-05-29海外IDC业务拓展的7大挑战
- 2024-05-29InLine Chat功能优化对标Github Copilot,CodeGeeX带来更高效、更直观的编程体验!
- 2024-05-29CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!
- 2024-05-29AutoMQ 生态集成 Apache Doris
- 2024-05-292024年IDC行业的深度挖掘:机遇、挑战与未来展望
- 2024-05-29五款扩展组件齐发 —— Volcano、Keda、Crane-scheduler 等,邀你体验
- 2024-05-29AutoMQ 对象存储数据高效组织的秘密: Compaction
- 2024-05-29活动预告|来 GIAC 大会听大数据降本利器:AutoMQ 基于云原生重新设计的 Kafka