啦啦啦,我是武夷,一个不太会卖萌的码农。今天咱们一块儿来聊一聊 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 将来版本。npm
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 近几年在各个领域的数据榜,潜力很是大,是一项很是值得学习的新技术。函数