Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
我们将使用JavaScript的前端开始新项目
但是JS(ES5)的当前状态还不够酷,它错过了很多很酷的功能,因此现在我们在决定选择什么:
1)用CoffeeScript编写代码并进行编译
2)在ES6中编写代码并使用https://babeljs.io/进行编译
3)用TypeScript编写代码并进行编译
有什么建议么?优点缺点?
您可以不带括号地调用函数。
缺点
由于CoffeeScript没有
ES6:
优点
ES6类具有设置器/获取器
缺点
还没有完全支持它,因此您必须始终担心无法做到的事情以及何时能够做到。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
我们将使用JavaScript的前端开始新项目
但是JS(ES5)的当前状态还不够酷,它错过了很多很酷的功能,因此现在我们在决定选择什么:
1)用CoffeeScript编写代码并进行编译
2)在ES6中编写代码并使用https://babeljs.io/进行编译
3)用TypeScript编写代码并进行编译
有什么建议么?优点缺点?
最佳答案
很难说哪个更好.CoffeeScript和ES6真的很像
CoffeeScript和ES6都有
班级
字符串插值
胖箭头
函数默认参数
可变函数
解构
摔得痛
CoffeeScript:
优点
您可以在Class
中轻松设置实例变量
class Person
constructor : (@name,@age) ->
您可以不带括号地调用函数。
John = new Person "John",20
缺点
由于CoffeeScript没有
var
,因此无论何时要定义新变量,都必须始终仔细检查该名称是否已在外部范围定义。这有时会带来很大的问题。variableA = 123
doSomething = ->
# You want to declare inner variable but Since same name's already exist,
#it's gonna be substitution instead.
variableA = "hello"
return variableA
ES6:
优点
ES6类具有设置器/获取器
缺点
还没有完全支持它,因此您必须始终担心无法做到的事情以及何时能够做到。
关于javascript - 比较ES6(编译为ES5),CoffeeScript和TypeScript的功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29764267/
10-13 09:47