为什么没有编译CoffeeScript传递JSHint?

Kir*_*eck 4 coffeescript jshint

我使用CoffeeScript主页中的示例,但它没有验证.

for一个是一个很好的例子,如果你使用的CoffeeScript语句不包裹身体在if声明.

  • 预期'{'而是看到'孩子'.
  • 可能严格违规.
  • 构造函数名称应以大写字母开头.
  • 'insertclassnamehere'已经定义.
  • 你的意思是返回条件而不是作业吗?
  • 预期'==='而是看到'=='.
  • 意外的'〜'.
  • 预期'!=='而是看到'!='.
  • for的主体应该包含在if语句中,以过滤原型中不需要的属性.

Chr*_*ter 8

我编译的CoffeeScript不会在JShint中验证..为什么?

简短的回答是:因为CoffeeScript编译器的创建者认为没必要.

对于由开发人员编写和维护的lint代码是有意义的.它通过使代码可读来避免人为错误.

另一方面,编译器生成的代码具有完全不同的要求.可读性通常不是问题.代码更高效,更小是更重要的.

如果你真的想要这个,那么你需要修改CoffeeScript编译器源代码.

  • Coffeescript汇编和linting应被视为互补.Coffeescript本身在帮助编写可维护的JS方面走了很长的路,这避免了糟糕的JS语法和实践.但是,在编写Coffeescript时,我确实被JSHint可以避免的JS(如拼写变量引用等)所迷惑.欣赏coffeescript现在有一些linting功能. (2认同)