insertar - llamar javascript desde html
¿Qué opciones están disponibles para documentar su código Javascript? (2)
Como se describe en este enlace:
Hay otro método que usa pseudocódigo en sintaxis java para documentar javascript.
Utilice una secuencia de comandos para obtener todo el pseudo código de los archivos .js y generar archivos .java con el mismo nombre, el script se adjunta debajo denominado builddoc. Este script realmente hace que todas las líneas comiencen con ''///'', ''/ * '', ''/ '', ''*'', '' /'' y ''// '' en el archivo .java. Entonces un archivo javascript como
//* package ns; /** * Foo. * @param foo foo. */ var foo=function(foo){} //* public void foo(String foo);
se convertirá en
package ns;
/**
* Foo.
* @param foo foo.
*/
public void foo(String foo);
Y ahora doxygen puede procesarlo en Java. Deberías usar FILE_PATTERNS = * .java en tu configuración doxygen para decirle a doxygen que analice todos los archivos .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
¿Hay algo como dOxygen / Javadoc? ¿Qué ha usado todo el mundo que ha funcionado bien?
El gorila de 800 libras de la documentación de Javascript es el JSDoc Toolkit y su sucesor JSDoc 3 . La mayoría de la documentación está hecha con etiquetas tipo Javadoc y un prefijo de comentario /**
.
Ejemplo:
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() {}
}
);