为什么Closure Compiler和YUI Compressor有不同的注释格式?

时间:2012-02-09 01:03:58

标签: yui google-closure-compiler jsdoc

我试图google for it,但找不到任何关于为什么Google Closure Compiler和YUI Compressor使用不同的注释格式

Google Closure Compiler使用JSDoc格式,其中注释以/**开头 将删除任何不同格式的注释。

如果YUI Compressor以/*!

开头,则只保留注释

我注意到大多数库(例如jQuery)使用/*!

你能告诉我为什么大多数图书馆使用/*!而不是JSDoc(我觉得很受欢迎?)格式?

我找不到Google Closure Compiler的任何标记来保留以/*!开头的注释

使用Google Closure Compiler解析两种格式的注释文件并保留所有注释的最佳方法是什么? Shell脚本使用流编辑器将/*!替换为/**并在缩小后再次返回?

非常感谢!

1 个答案:

答案 0 :(得分:1)

Closure Compiler删除除JSDoc注释中的@license或@preserve部分之外的所有注释(它移动到文件头部)。 “/ *!”有类似的目的。

更具体地说,没有人足够关心“/ *!”做这项工作增加对Closure Compiler的支持。这样做应该是合理的,因为YUI和Closure Compiler都使用Rhino的javascript解析器(我不确定YUI使用的是什么版本,但Closure Compiler使用当前版本)。