历经一年的紧张开发,CoffeeScript 浴火重生,推出了 CoffeeScript 2,更新语言以适用于现代 JavaScript 社区。
Geoffrey Booth 是在一个博客帖子中宣布这一版本发布的,并希望 CoffeeScript 2 能将该语言带回到现代 JavaScript 的车道上:
新发布的 CoffeeScript 语言和编译器瞄准于将 CoffeeScript 带入现代 JavaScript 时代,在保持 CoffeeScript 独树一帜的整洁语法的同时,填补了存在于 JavaScript 兼容性上的差距。
在 CoffeeScript 首次投入使用时,ECMAScript 2015 尚未发布,因此也没有class
定义和箭头函数(=>
)等这些在 CoffeeScript 中广为使用的概念。这些特性使得 JavaScript 开发人员能以当时 JavaScript 尚不具备的方式考虑问题。但是时过境迁,这些特性现已成为 JavaScript 的一般特性。鉴于 CoffeeScript 2 将编译输出为现代 JavaScript 程序,因此同样支持class
和=>
。CoffeeScript 2 中添加的其它特性包括:
- 模块;
- 异步函数;
- 默认参数值;
- 对象析构。
随着一系列的活动和社区脱颖而出,CoffeeScrip 业已黯然失色。Hacker New 用户“srb-”是这样写道:“作为一名CoffeeScript 热爱者,在一两年前事情就看起来相当暗淡。特别是完全看不到推出新特性的动力。”
CoffeeScript 的创立者 Jeremy Ashkenas说:“这次更新正是面向那些依然使用CoffeeScrip 的开发人员,以及使用已有CoffeeScript 代码库的人”。虽然对CoffeeScript 的兴趣已经随时间而暗淡,但是该语言的确影响了我们当前所看到的JavaScript。JavaScript 的创始人Brendan Eich曾写道,ES6 的大箭头函数( =>
)就“部分上受到 CoffeeScript 的启发”。
Booth 在 InfoQ 的一次采访中,表示对结果很高兴:
我认为 CoffeeScript 的处境很好。虽然它已不复数年前的景象,但这也是一件好事情。现在 CoffeeScript 可以聚焦于更整洁的 JavaScript,而 ECMA 得以聚焦于语言特性。CoffeeScript 的使用依然相当广泛,并具有足够的支持,因此它依然适用于任何项目。这正是我们推出 CoffeeScript 2 的目的所在。
查看英文原文: CoffeeScript 2 Released, Adding Modern JavaScript Features
评论