2008-10-22 11 views

Respuesta

13

De http://www.jslint.com/lint.html:

El análisis se realiza mediante un script que se ejecuta en su máquina. Su secuencia de comandos no se envía a través de la red.

También está disponible como Konfabulator widget. Puede verificar un archivo por arrastrándolo y soltándolo en el widget . Puede volver a verificar el archivo al haciendo doble clic en el widget.

También está disponible en una versión WSH Command Line.

También está disponible en una versión Rhino Command Line.

O bien, como JSLint es un programa de JavaScript que se ejecuta en su navegador, puede tomar el script y ejecutarlo localmente.

+0

sí, pero ¿por qué lo harías? él actualiza bastante regularmente. wow acaba de ver qué edad tiene este hilo es lol .. –

+2

si quería está disponible en [github] (https://github.com/douglascrockford/JSLint) –

+1

El enlace a la versión de WSH Command Line no es válido. –

3

¿Puedes guardar la página en tu disco duro?

1

Simplemente guarde la página html en su disco duro, y luego descargue los archivos .js que usa a la misma ubicación. Esa es la belleza de JavaScript.

0

La mayoría de los navegadores tienen la capacidad de guardar una página "completa", lo que significa que todos los archivos externos como StyleSheets, JavaScripts, etc. también se descargan y se vinculan correctamente al documento HTML (generalmente ubicados en una carpeta al lado del archivo HTML) . Por lo tanto, definitivamente debería ser posible usar la herramienta fuera de línea.

9

También puede utilizar JavaScript pelusa en su máquina,
conseguirlo de aquí
JavaScript Lint

Hay instrucciones sobre cómo integrarlo en muchos editores/del IDE en el sitio anteriormente. Lo uso en UltraEdit y funciona muy bien.

Desde el sitio por encima de

Puede ejecutar Javascript Lint varias maneras:

Puede integrarla en su IDE, como Visual Studio, SciTE, o cualquier otro IDE compatible con herramientas externas . Cuando JavaScript Lint encuentra un error, su IDE lo lleva directamente a la línea que contiene el error.

Puede ejecutarlo a través del Explorador de Windows, que los programadores de Windows pueden preferir.

Puede usar la línea de comandos para integrarse en su sistema de compilación, o tal vez sea un programador de Linux y simplemente prefiera la línea de comandos.

1

Algunos más respuestas (no todos estrictamente para ventanas) sobre al jslint CLI options

4

Adición a esta vieja pregunta: ¿La versión de WScript jslint.js produce mensajes de error que son muy a diferencia de cualquier mensaje de error compilador.

Si usted quiere que sean similares, y si usted quiere ser capaz de especificar el nombre del archivo .js en la línea de comandos, en lugar de utilizar la entrada estándar para leer el archivo, haga esto:

Descargar jslint.js, the WScript version.

Edite el archivo jslint.js. Desplazarse hasta la parte inferior y encontrar esto:

(function(){if(!JSLINT(WScript.StdIn.ReadAll(),..... 

Reemplazar eso (y todo lo que sigue) con esto:

(function(){ 
    var filename = "stdin"; 
    var content= ""; 
    if (WScript.Arguments.length > 0){ 
     filename = WScript.Arguments(0); 
     var fso = new ActiveXObject("Scripting.FileSystemObject"); 
     //var file = fso.GetFile(filename); 
     var fs = fso.OpenTextFile(filename, 1); 
     content = fs.ReadAll(); 
     fs.Close(); 
     fso = null; 
     fs = null; 
    } else { 
     content = WScript.StdIn.ReadAll(); 
    } 
    if(!JSLINT(content,{passfail:false})){ 
     WScript.StdErr.WriteLine("JSLINT"); 
     for (var i=0; i<JSLINT.errors.length; i++) { 
      // sample error msg: 
      // sprintf.js(53,42) JSLINT: Use the array literal notation []. 
      var e=JSLINT.errors[i]; 
      if (e !== null){ 
       var line = (typeof e.line == "undefined")?'0':e.line; 
       WScript.StdErr.WriteLine(filename + '(' +line+','+e.character+') JSLINT: '+e.reason); 
       WScript.StdErr.WriteLine(' ' + (e.evidence||'').replace(/^\s*(\S*(\s+\S+)*)\s*$/,"$1")); 
      } 
     }}}()); 

Este cambio hace dos cosas:

  1. le permite especificar el archivo para ejecutar pelusa, en la línea de comandos, en lugar de como stdin. Stdin todavía funciona si no se especifica ningún archivo.
  2. emite los mensajes de error en un formato que es más similar a la mayoría de los compiladores de C/C++.

Luego, en la línea de cmd.exe, que puede hacer:

cscript.exe jslint.js MyJavascriptModule.js 

y obtendrá mensajes de error, así:

JSLINT 
MyJavascriptModule.js(7,17) JSLINT: 'xml' is already defined. 
    var xml = new ActiveXObject("Microsoft.XMLHTTP"); 
MyJavascriptModule.js(10,5) JSLINT: 'xml' used out of scope. 
    xml.open("GET", url, true); 
MyJavascriptModule.js(11,9) JSLINT: 'xml' used out of scope. 
    if (xml.overrideMimeType) { 
MyJavascriptModule.js(12,9) JSLINT: 'xml' used out of scope. 
    xml.overrideMimeType('text/plain; charset=x-user-defined'); 
MyJavascriptModule.js(14,9) JSLINT: 'xml' used out of scope. 
    xml.setRequestHeader('Accept-Charset', 'x-user-defined'); 
MyJavascriptModule.js(17,5) JSLINT: 'xml' used out of scope. 
    xml.onreadystatechange = function() { 
MyJavascriptModule.js(28,5) JSLINT: 'xml' used out of scope. 
    xml.send(''); 
MyJavascriptModule.js(34,16) JSLINT: Expected '{' and instead saw 'url'. 
    if (proxy) url = proxy + '?url=' + encodeURIComponent(url); 
MyJavascriptModule.js(51,16) JSLINT: Expected '{' and instead saw 'url'. 
    if (proxy) url = proxy + '?url=' + encodeURIComponent(url); 
1

Se puede encontrar un complemento de Visual Studio here.

Es un poco difícil pero hace el trabajo.

Acabo de unirme al proyecto y lo actualizaré en los próximos meses.

0

MiniME es una alternativa a JSLint que se ejecuta nativamente en ventanas que pueden serle de utilidad.

Divulgación completa, estoy detrás de esto: http://www.toptensoftware.com/minime que hace la minificación, ofuscación y un conjunto razonable de controles de estilo de pelusa.

1

Hemos encontrado JSLint4Java muy bueno. Si está utilizando Ant para construir su proyecto, la tarea Ant que proporciona es particularmente útil.

4

Sé que este es uno antiguo, pero nadie mencionó que JSLint es de código abierto y está disponible en github.https://github.com/douglascrockford/JSLint

Puede utilizar la página HTML que se incluye, o crear su propia interfaz usando:

var options = { 
    browser : true, 
    plusplus : true, 
    unparam : true, 
    maxlen : 120, 
    indent : 4 // etc 
}; 
if (JSLINT(myCode, options)) { 
    document.write('Passed!'); 
} else { 
    document.write('Failed! :('); 
} 
document.write('<ul>'); 
for (i = 0; i < JSLINT.errors.length; i++) { 
    document.write('<li><b>' + JSLINT.errors[i].line + ':</b> ' + JSLINT.errors[i].reason + '</li>'); 
} 
document.write('</ul>'); 
+0

Y el único archivo "faltante" (el archivo léame dice tanto, pero no enlaza al archivo compuesto que tiene) está actualmente aquí: http://jslint.com/web_jslint.js – ruffin

0

JSLint reportero corriendo con Node.js

Fácil de mantener al día.

  1. Instalar Node.js.

  2. Instalar jslint-reporter en: C:\jslint-reporter

  3. Descargar JSLint:

    C:\jslint-reporter>node wrapper.js --upgrade 
    
  4. prueba:

    C:\Temp>node C:\jslint-reporter\wrapper.js missing_semicolon.js 
    missing_semicolon.js:1:10:Expected ';' and instead saw 'console'. 
    missing_semicolon.js:2:1:'console' was used before it was defined. 
    
  5. paquete

JSLint Node.js

Es fácil de configurar, pero se basan en el autor del paquete para mantener el JSLint incluido hasta la fecha:

  1. Instalar Node.js.

  2. Usando NPM, el gestor de paquetes de Node.js, instale JSLint:

    C:\>npm -g install jslint 
    
  3. prueba:

    C:\Temp>jslint missing_semicolon.js 
    
    missing_semicolon.js 
    #1 Expected ';' and instead saw 'console'. 
        var x = 5 // Line 1, Pos 10 
    

Otras soluciones

Para ejecutar JSLint , también puedes usar Rhino o cualquier otra implementación de JavaScript que funcione en Windows, por supuesto.

+0

Se siguieron las instrucciones para el Nodo JSLint. el paquete js, y no aparece ningún resultado al ejecutar el comando. ¿Muestra algo, entonces tal vez hay algo de configuración que falta? – Victoria

+0

Obtuve el resultado de uso cuando se ejecuta sin parámetros. Así que decidí "tocar el violín" ... Agregar comillas alrededor del nombre del archivo no ayudó (pero lo haría si hubiera espacios en él, tal vez). Prefijo el nombre del archivo con. \ Fue la solución que finalmente funcionó. – Victoria

+0

@Victoria Weird, no necesito agregar '. \'. * ¿Ejecutaste 'jslint file.js' en' cmd.exe'? * – feklee

0

CSE HTML Validator incluye JSLint y se ejecuta en las máquinas de escritorio con Windows.

Cuestiones relacionadas