我刚刚开始探索新的 JavaScript 想法,给我留下了深刻的印象。乍一看,CoffeeScript 和 TypeScript 都有一些很棒的功能。它们都被编译为 JavaScript。 CoffeeScript 很棒,因为它使代码更短、更清晰。另一方面,TypeScript 使我们有可能构建复杂的应用程序。
是否可以混合使用 TypeScript 和 CoffeeScript?我的意思是 - 在同一个文件中利用它们?
简短回答:不。
您需要将 CoffeeScript/TypeScript 文件编译为 JavaScript 文件,这意味着该文件作为一个整体,对于给定语言必须是语法正确。
CoffeeScript 和 TypeScript 在语法上不可互换。充其量,您必须在语法使用方面诉诸一些最低公分母,但这将完全违背使用两者中的任何一个而不是纯 JavaScript 的目的。
你不能,这真是个坏主意。
假设您可以在一个文件中包含 CoffeeScript 和 TypeScript,那么您需要可以同时使用这两种语言进行编程的开发人员,因此您的产品会更昂贵。此外,您将失去使用 lints 检查代码的任何合理机会。
我什至无法想象当你结合 CoffeeScript 和 TypeScript 时,模块(commonjs、AMD、ES6...)会遇到什么样的麻烦。
如果您使用一种语言,您通常会从其作者那里获得如何正确使用该语言执行操作的教程。当您混合语言时,您必须想出“在我的环境中执行 X 操作的正确方法是什么”。这些挑战听起来微不足道,但对于任何严肃的项目来说,它们都可能是致命的。
如果您可以选择,我会推荐 TypeScript,因为它可以帮助您避免大量运行时错误。它的视觉效果不如 CoffeeScript 那么好,但这不是你通常获得报酬的原因。
看看compiled-coffee,里面写着:
您喜欢 TypeScript 的类型安全性和简洁的语法吗? 咖啡脚本?那么 CompiledCoffee 就适合您!它结合了 CoffeeScript 通过定义文件使用 TypeScript 的类型系统。 您创建一个 *.coffee 文件和一个同名的 *.d.ts 文件,位于 您(可选)输入内容。休息会自动处理。
目前不行,CS 和 TS 都有一堆不兼容的语法。您需要一个专门的编译器来处理这些类型的
CoffeeTypeScript
文件,但该编译器不存在。
我对这样的语言的外观非常感兴趣,但我担心它会有太多选择并且很难学习(相对于 CS 或 TS)。我想用它来编程会有点类似于
python
。
出现了新的编程语言,尝试混合 TypeScript 和 CoffeeScript - Civet