2012-06-14 8 views
10

¿Hay un equivalente de verificación de sintaxis de perl -c para el comando de JavaScript? ¿Dado que tengo NodeJS instalado?Comprobación de la sintaxis de JavaScript mediante el comando

JSLint no se considera, ya que no es un analizador real. Creo que el compresor YUI es posible, pero no quiero instalar Java en las máquinas de producción, así que estoy comprobando si Node.JS ya proporcionó este mecanismo de verificación de sintaxis.

+0

Prueba uglify. Puedes instalarlo a través de npm. –

+0

¿Instalar solo java o algo? Si solo java pudiera consultar http://www.javascriptlint.com/ – Prusse

+0

¿No debería verificar la sintaxis antes de llevar el proyecto a producción? Tal vez incluso antes de comprometerse? –

Respuesta

8

Probar uglify . Puedes instalarlo a través de npm.

Editar: El nombre del paquete ha cambiado. Es uglify-js.

+1

Esto puede haber cambiado. Me sale este error: npm ERR! 404 'uglify' no está en el registro npm. – taco

1

Después de una nueva investigación, lamento haber deshecho ese voto negativo.

nodejs --help 

explica el parámetro -p: evalúa el código suministrado e imprime los resultados. Entonces, usar nodejs -p < /path/to/file.js sería una manera desastrosa de verificar la validez del código node.js en su servidor. Una posible solución es la indicada en this SO thread. La única cosa no tan buena al respecto, los mensajes de error de sintaxis que informa no son terriblemente útiles. Por ejemplo, le dice que algo está mal pero sin decirle donde es incorrecto.

+0

Para ser sincero, creo que tienes razón. Creo que es posible que cuando publiqué mi respuesta, el comportamiento fuera correcto para la versión del nodo que estaba ejecutando. Actualmente utilizo 'js -C ' para verificar la sintaxis de los archivos JS, ha sido así por un tiempo. Borré mi respuesta – pgl

+0

Desafortunadamente eso hace que esta respuesta no tenga mucho sentido. Lo siento por eso. – pgl

+0

@pgl node -C ? ¿Podrías explicar? ¿Esto es para la verificación de sintaxis JS del lado del servidor? ¿Es esta una opción de línea de comando para V8js por casualidad? – DroidOS

Cuestiones relacionadas