有哪些选项可用于logging您的Javascript代码?

有没有像dOxygen / Javadoc? 大家在那里用过的那个工作得很好?

JavaScript文档的800磅重的大猩猩是JSDoc Toolkit及其后继版本JSDoc 3 。 大部分文档都是使用Javadoc标签和/**注释前缀完成的。

例:

 var MyClass = Class.create( /** @lends MyClass# */ // @lends is how you document anonymous classes. { /** * Description of constructor. * @class Description of class. // @class annotation goes anywhere and * // describes the whole class. * @constructs // This is a constructor. */ initialize: function(arg0, arg1) { //... }, /** A method. */ myFunc: function() {}, /** An instance field. */ myVar: 123 } ); Object.extend(MyClass, /** @lends MyClass */ { /** A class method. */ classFunc: function() {} } ); 

如此链接所述:

还有另一种方法,在Java语法中使用伪代码来loggingJavaScript。

  1. 使用脚本从.js文件获取所有伪代码,并生成具有相同名称的.java文件,脚本附在下面的命名为builddoc。 这个脚本实际上把所有以'/','/ * ','/ ','*',' /'和'// '开头的行放到.java文件中。 所以一个JavaScript文件就像

     //* package ns; /** * Foo. * @param foo foo. */ var foo=function(foo){} //* public void foo(String foo); 

将被转换成

 package ns; /** * Foo. * @param foo foo. */ public void foo(String foo); 

现在doxygen可以用java的方式处理它。 您应该在您的doxygenconfiguration中使用FILE_PATTERNS = * .java来告诉doxygenparsing所有的.java文件。

builddoc:

 #!/bin/bash DIRs="./" if [ $# -ne 0 ] then DIRs=$@ fi for DIR in $DIRs; do JSs=`find $DIR -name "*.js"` for JS in $JSs; do DOC=`echo $JS|sed 's/\(.*\)\.js/\1.java/g'`; if [ $JS -nt $DOC ]; then echo "rebuild $DOC" grep -e '^\s*\(///\|//\*\|/\*\*\| \* \| \*/\)' $JS | sed 's/^\s*\/\/\*\(.*\)$/\1/g'> $DOC fi done done