TypeScript -脚本编程语言

严格的生成器(Stricter Generators)

TypeScript 引入了对迭代器和生成器函数(generator functions)的更严格检查。在早期版本中,生成器的使用者无法区分一个值是来自 yield 操作或是从生成器返回。

TypeScript -脚本编程语言_第1张图片

在此基础上,新类型 Generator 是一个 Iterator,它同时存在 return 和 throw 方法,并且是可迭代的。

TypeScript -脚本编程语言_第2张图片

 

数组扩展

在默认情况下,TypeScript 使用一个更简单的发射,它只支持数组类型,并支持使用 --downlevelIteration 标志在其他类型上进行迭代。在此标志下,发出的代码更准确,但要大得多。但是,在某些边缘情况下,受支持的数组还是存在一些差异,如下:

[...Array(5)]

等效于以下数组:

[undefined, undefined, undefined, undefined, undefined]

但是,TypeScript 将原始代码转换为以下代码:

Array(5).slice();

这是不一样的,Array(5) 生成长度为 5 的数组,但没有属性:

 

更好的 Unicode 支持标识符

当发射到 ES 2015或其他时,3.6 版本包含更好地支持标识符中的 Unicode 字符:

 

环境类和函数可以合并

在任何情况下合并类和函数都是有错的。此版本中,环境类和函数(带有 declare 修饰符的类/函数,或 .d.ts 文件中的类/函数)可以合并。如下内容:

TypeScript -脚本编程语言_第3张图片

而不需要使用:

TypeScript -脚本编程语言_第4张图片

New TypeScript Playground

新的 TypeScript playground 支持许多新的选择,包括:

  • target 选项(允许用户从 ES5 切换到 ES3、es2015、esnext 等)
  • 所有标记(包括 strict)
  • 对普通 JavaScript 文件的支持(使用 allowJS 和 CheckJS)

请见 TypeScript 网站。使用 npm 命令获取:

npm install -g typescript

编辑器支持:

  • Visual Studio 2019/2017
  • Visual Studio Code
  • Sublime Text 3 via PackageControl

 

参考来源:https://devblogs.microsoft.com/typescript/announcing-typescript-3-6/

 

你可能感兴趣的:(编程语言)