2009-07-02 9 views
17

Una pequeña pregunta aquí, lo sé.Ejecutando el motor independiente javascript?

pero yo quería saber si existe algún tipo de motor independiente para javascript ..

Básicamente quiero probar funcionamiento de mi javascript sin tener que cargar una página web ...

Tal vez doesn ¿existe? Como una especie de ide donde puedo ejecutar comandos directamente sin necesidad de iniciar IE etc ...

Tengo un gran editor, pero no es compatible con que .. todavía tengo que lanzar es decir/firefxo

Lo que Estaba pensando en algún tipo de motor de JavaScript independiente que podría escribir mi código aquí y hacer que la depuración sea un poco más fácil ... y luego copiarlo a mi página web.

Sé que existe firebug pero no puedes hacer lo que te estoy pidiendo cna?

¿Alguna idea?

+0

@Artem Barger: Hice una búsqueda en Google y los resultados fueron confusos. Luego hice una búsqueda en SO, encontré esta pregunta, que resultó ser muy útil. Lo que NO es útil es tu comentario. Por ejemplo, mi búsqueda en Google no apareció en la primera página de resultados de Rhino. Tampoco explicaba que JS integrado en Windows se puede llamar a través de cscript. Si los motores de búsqueda respondieron todas las preguntas, ¿por qué habría una razón para sitios como este?Por favor, intenta ser más humano. – Sabuncu

+0

@Toddintr - ¿Te importaría explicar de qué estás hablando exactamente? –

+0

@Artem Barger: Originalmente tuviste un comentario aquí donde castigaste la posibilidad de publicar esta pregunta. Mi comentario es en respuesta a su comentario original, que desde entonces ha sido eliminado (por quién, no lo sé). – Sabuncu

Respuesta

3

Rhino es una implementación de código abierto de JavaScript escrita completamente en Java.

0

Usando Rhino o SpiderMonkey puede tener un motor JS independiente, o incluirlo en otras aplicaciones que escriba; pero no podrá probar nada que tenga que ver con el Modelo de Objetos de Documento (DOM), como manipular elementos y atributos o responder a eventos.

El navegador proporciona todo lo que tiene que ver con el DOM como entorno host en el que se ejecuta el motor de JavaScript. Ningún navegador significa ningún DOM.

Si el código que está planeando trabajar no tiene absolutamente ninguna dependencia de nada proporcionado por el entorno del navegador, entonces puede comenzar por mirar el Rhino Shell.

EDITAR: Microsoft's JScript también es un componente COM independiente que se puede ejecutar en Windows Script Host. El modelo de objetos disponible en ese entorno ofrece un nivel básico de acceso al shell de Windows.

6

En cuanto al motor, en realidad está construido en Windows y IE solo lo usa para páginas web. Pruébelo: puede crear un archivo simple .js y ejecutarlo. Es un gran reemplazo para los archivos .bat en realidad. :) También puede cscript.exe (para la consola) y wscript.exe (para la aplicación de Windows) para ejecutar sus scripts. En realidad, es lo que Windows ejecuta internamente cuando hace doble clic en un archivo .js.

En cuanto a la depuración, no sé.Sé que:

  • Visual Studio admite la depuración de scripts, al menos para navegadores (pero probablemente en otras aplicaciones que se integran con Windows Scripting Host);
  • Hay un "Depurador de scripts" separado que se puede descargar de forma gratuita de Microsoft, aunque la última vez que lo revisé era bastante malo;
  • Los cscript.exe y wscipt.exe mencionados anteriormente tienen parámetros de línea de comandos que tienen algo que ver con la depuración de scripts, aunque no sé lo que hacen.
+0

Además, puede usar 'cscript/nologo' para suprimir la versión y el resultado de copyright. Dentro del script, puede usar 'WScript.stdout.write' para generar sus resultados. – Rhubbarb

3

Muchas personas aquí han recomendado Rhino u otros del lado del servidor implementaciones. Pero por lo que leo, quieres algo que emule el entorno del navegador. En ese sentido, lo que probaría (eso significa que no he usado esta combinación antes) es Mozilla Rhino y env.js. Si bien he estado usando Mozilla Rhino desde hace bastante tiempo, no puedo decir demasiado sobre env.js.

env.js es una emulación del entorno del navegador. Fue desarrollado originalmente por John Resig, pero Chris Thatcher lo hizo ver como es ahora. Que en mi opinión parece muy prometedor. No lo he probado antes pero le daría una oportunidad.

2

He descubierto recientemente que si tiene instalado Visual Studio puede depurar JScripts invocando un script como cscript test.js //X que abre la ventana del depurador Just In Time.

Luego puede pasar línea por línea a través del script con todas las ventajas de un depurador real.

1

jslibs es un buen tiempo de ejecución independiente de JavaScript basado en el motor de JavaScript de Firefox.

1

JSC.exe y una interfaz de símbolo del sistema le permitirán compilar JScript/JavaScript en un ejecutable .Net directamente en su escritorio.

JSC [JScript Compiler] tiene un -? o la función -help que muestra todas las opciones y banderas del compilador y es un ejecutable independiente. Cópielo en una carpeta de su elección, luego copie cmd.exe en la misma carpeta y obtenga la codificación. Guarde su fuente con una extensión de archivo .js en la carpeta con sus ejecutables cmd y jsc. Sí, jsc.exe funciona con archivos regulares .js, pero los tutoriales de JScript.net pueden mostrarle cómo crear una GUI con botones y todo para su archivo .js.

Compila tu archivo .js iniciando el shell de línea de comandos (cmd.exe), en la misma carpeta que jsc.exe y tu archivo .js, escribe jsc luego un espacio y luego el nombre del archivo .js - presionar enter - hecho. Además, jsc genera errores y advertencias del depurador en el mismo cmd.exe que lo inició con las posiciones de línea y carácter en su archivo .js donde se encontró el problema. También puede obtener la salida del objeto de depuración guardada en .pdb, para su archivo .js escribiendo jsc, un espacio luego escribiendo/depurando un espacio y su nombre de archivo .js.

  • '/ debug' = una barra inclinada entonces la palabra de depuración o ...
  • '-debug' = a menos o carácter de guión a continuación la palabra de depuración.

/y - antes de una bandera se gestionan/leer de forma idéntica, utilizar lo que es mejor para usted sólo asegúrese de que no pone de depuración o cualquier banderas en las citas de cualquier tipo.

Easy peasy; jsc.exe se ejecutará desde una memoria USB y tarjetas de memoria flash por igual con el único requisito de que .Net Framework esté instalado en el sistema operativo host. Si está ejecutando versiones más nuevas de Windows, el .Net Framework viene preinstalado de todos modos; vaya al directorio/carpeta de Windows de su sistema operativo Windows y realice una búsqueda de jsc.exe y probablemente obtenga una versión .Net de jsc.exe para 2.0 y 4.0 como mínimo. Copie la (s) versión (es) que desee a su carpeta elegida repitiendo el proceso para encontrar el cmd.exe.

DONOT cortar y pegar jsc.exe y cmd.exe - solo copie estos ejecutables en el directorio desde el que desea ejecutarlos. Haga clic con el botón derecho en el (los) archivo (s) y, desde el menú contextual, haga clic en la opción de selección del menú Copiar. Haga clic con el botón derecho en el directorio que creó para jsc.exe y cmd.exe y haga clic en la opción de selección del menú contextual Pegar. También puede hacer clic en el archivo para resaltarlo, luego presionar la tecla Ctrl y luego presionar la tecla C para copiar el archivo al portapapeles; Haga un solo clic para resaltar o haga doble clic para abrir el directorio que creó y luego presione y mantenga presionada la tecla Ctrl, presione la tecla V para pegar los archivos en el directorio elegido.

hechos poco conocidos:

    • JScript es la implementación de Microsoft de ECMAScript 5 Especificación JavaScript compatible y MSDN tiene una excelente documentación sobre el mismo, así como JavaScript actual.
    • cmd.exe soporta arrastrar y soltar; entonces, puede arrastrar y soltar el jsc.exe en el símbolo del sistema, escriba un espacio, luego arrastre y suelte su archivo .js en él, presione enter para compilar y disfrutar.
    • no trabajo para Microsoft, pero probablemente debería.

El .Net Framework Mono para Linux podría ser capaz de soportar aplicaciones JScript.NET así, pero no he mirado en este tema desde hace algún tiempo. El Mono Framework es un .Net Framework compatible con Linux que sigue las especificaciones de ECMA para .NET Framework siguiendo el CLS (Common Language Specification [generic com]). Mono Framework es compatible con una gran parte de la especificación ECMA y es ampliamente compatible con Microsoft .Net Framework.

Tiene uno bueno.

0

Estoy usando Scratchpad que está en Firefox con las herramientas de desarrollador web y JSDB. También hay una lista de Javascript shells at MDN. Esto es cuando solo quiero ejecutar rápidamente fragmentos de código JavaScript.

Cuestiones relacionadas