TypeScript 2.0 已发布
来源:互联网 发布:mac 电脑免费翻墙软件 编辑:程序博客网 时间:2024/05/16 14:06
微软最近发布了TypeScript 2.0,该版本提供了简化的声明文件获取、Non-nullable类型,以及Readonly
修饰符。
TypeScript项目经理Daniel Rosenwasser称,他们团队对于该版本“紧随ECMAScript规范,为JavaScript库和工具提供了更广泛的支持,并通过一个语言服务在各大编辑器中提供了一流的编辑体验”感到极为“兴奋”。
TypeScript 2.0使得开发者可以更容易地获取并使用声明文件。Rosenwasser承认“学习如何获取和管理声明文件的依赖性”过去一直是用户最头疼的问题,但在2.0版中通过npm install --save @types/lodash
命令即可安装范围包@types/lodash
,随后当开发者的程序中任何位置导入Lodash后,TypeScript 2.0将能自动引用。
Non-nullable类型是2.0版引入的另一个新功能。虽然该语言最初的设想是所有类型始终为Nullable的,但实际上该团队也发现,这样的设计并不能预防null/undefined
问题。在此次发布的新版中,null
和undefined
均有自己的类型,借此开发者可以明确表示何时可接受null/undefined
值。下列视频展示了TypeScript的这一特性。
插入一个视频:https://msdnshared.blob.core.windows.net/media/2016/09/nonnullable-types-fade.mp4
TypeScript 2.0中的属性可声明为只读的,随后所有不包含Set-accessor的Get-accessor均会被视作只读的。
class Person { readonly name: string; constructor(name: string) { if (name.length < 1) { throw new Error("Empty name!"); } this.name = name; }}// Error! 'name' is read-only.new Person("Daniel").name = "Dan";
整个社区对微软此次发布的新版给予极高评价。Ed Rochenski在HackerNews报道中表达了自己的意见:
我已经迫不及待想要在我们的生产应用中使用这些新功能了。TypeScript一直是我步入JavaScript开发的桥梁,IMHO JavaScript早已被废弃,真不知道如果没有TypeScript的话我能否继续坚持使用JavaScript来开发。
Non-nullable类型、可加标签的Union类型,以及更简单的声明文件,这些是新版中最让我激动的功能。
在Rosenwasser的博客文章中,用户Allen通过评论问到:“我很想在自己的代码库中使用strictNullChecks,但能否通过什么方法让某些/全部库类型定义继续使用lax null检查?”据称他在配合外部类型定义使用strictNullChecks时遇到了问题,因为所用库的类型定义并非严格Null safe的。
Rosenwasser回应称:“目前需要针对strictNullChecks创建依赖项,虽然很多第三方.d.ts文件不受影响可以继续使用,但如果遇到问题,可以随时向types-2.0分支的DefinitelyTyped发送Pull请求。”
根据路线图的介绍,TypeScript还支持ES8对象属性的Spread和Rest,以及函数表达式/箭头函数的装饰器(Decorator),并可支持节点注册钩子。自TypeScript 1.8以来完整的改进和变更清单可访问该项目的GitHub页面。
TypeScript已通过Apache许可方式开源并发布。有意参与该项目的读者可访问:https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md。
原文链接:http://www.infoq.com/cn/news/2016/10/TypeScript-2-Released
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注
- TypeScript 2.0 已发布
- TypeScript 2.0 正式发布
- TypeScript 2.1发布
- CTE 2.0 已发布
- TypeScript 0.8.1版发布
- TypeScript 2.5 发布,增加语言级重构
- 杂谈:TypeScript 2.0
- typescript
- TypeScript
- typeScript
- typescript
- TypeScript
- TypeScript
- typescript
- TypeScript
- TypeScript
- TypeScript
- TypeScript
- 综述:编程语言的发展趋势及未来方向
- 编程语言的发展趋势及未来方向(1):历史回顾及趋势概述
- 编程语言的发展趋势及未来方向(2):声明式编程与DSL
- 编程语言的发展趋势及未来方向(3):函数式编程
- 如何将 Microsoft Bot Framework 链接至微信公共号
- TypeScript 2.0 已发布
- Redis集群~StackExchange.Redis(10月6号版1.1.608.0)连接Twemproxy支持Auth指令了
- .Net开源微型ORM框架测评
- 搭建分布式 ASP.NET Core Web
- Windows Server 2016提供Docker原生运行的企业级支持
- gRPC .NET Core跨平台学习
- .NET Core中使用Razor模板引擎
- 应用工具 .NET Portability Analyzer 分析迁移dotnet core
- .Net Core及.Net Standard主要概念回顾