用编译成 JavaScript 的语言编写JavaScript 代码的一些优点/缺点是什么?
Topics
JAVASCRIPT
在GitHub上编辑
编译为 JavaScript 的一些语言的例子包括 CoffeeScript、Elm、ClojureScript、PureScript 和 TypeScript。
优点
- 修复 JavaScript 中一些长期存在的问题,并阻止 JavaScript 的反模式。
- 通过在 JavaScript 之上提供一些语法糖,使你能够写出更短的代码,ES5 缺乏这种能力,但 ES2015 却很棒。
- 静态类型对于需要长期维护的大型项目来说是很棒的(就 TypeScript 而言)。
缺点
- 需要一个构建/编译过程,因为浏览器只运行 JavaScript,你的代码在提供给浏览器之前需要被编译成 JavaScript。
- 如果你的源码图没有很好地映射到你的预编译源码上,调试就会很麻烦。
- 大多数开发者不熟悉这些语言,需要学习它。 如果你在你的项目中使用它,对你的团队来说会有一个增加成本。
- 较小的社区(依赖于语言),这意味着资源、教程、库和工具将更难找到。
- IDE/编辑器的支持可能缺乏。
- 这些语言将永远落后于最新的 JavaScript 标准。
- 开发人员应该认识到他们的代码被编译成什么样子--因为那是实际运行的东西,而那是最终重要的东西。
实际上,ES2015 极大地改善了 JavaScript,使其更易于编写。 现在实际上没有必要使用 CoffeeScript 相反,TypeScript 是首选,因为它带来了额外的类型安全和改进的开发者体验。