2011-07-26 10 views
24

Obtuve this cuando estaba tratando de encontrar la manera de ejecutar mis programas de JavaScript a través de la terminal. El comando run y load mencionado puede ejecutar archivos JavaScript externos. Ayudame a hacer esto. Estoy intentando ejecutar programas JavaScript que se almacenan localmente en mi sistema.¿Cómo ejecutar JavaScript usando jsc en OS X?

EDITAR: Estoy tratando de resolver Proyecto Euler Q10 en JavaScript. Este es el programa que quiero ejecutar en NodeJs o JSC. Necesito ayuda para ejecutar los archivos JavaScript en Node y JSC. Cualquier ejemplo será realmente útil.

Gracias a todos.

+0

Las instrucciones que enlaza parecen bastante claras. ¿Qué problema estás teniendo? ¿Que estas intentando? ¿Cómo difiere el comportamiento que obtienes del comportamiento que esperas? – Quentin

Respuesta

0

No tiene muy claro qué tipo de programas son estos scripts. ¿Realizan tareas locales (por ejemplo, interactúan con el sistema de archivos local)? ¿O son secuencias de comandos web que se supone que interactúan con los documentos ML (HT | X)?

Si su escenario de uso es el primero, le recomiendo usar node.js. Está bajo un gran desarrollo, pero ya es muy útil. Para mi primer proyecto con Node escribí un chat XMPP, completamente en JavaScript.

Editar: "¿Cómo ejecutar JavaScript en OS X"

Me parece haber pasado por alto "el uso de la SA" en la pregunta y respondió en lugar. Aún así, creo que Node es una mejor alternativa si el autor está buscando usar JavaScript en lugar de algo como Python o Perl.

67

Complementos de this post, JSC vive en

/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc 

y no está en la cáscara PATH por defecto. Se puede arreglar eso con

ln -s /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc /usr/local/bin 

jsc toma como argumentos nombres de archivo. Podría ejecutar un archivo llamado demo.js con

jsc demo.js 

Tenga en cuenta que tendrá que usar debug() en lugar del convencional console.log() en el script para ver cualquier salida.

+1

Vine aquí por un console.log() analógico; Gracias. –

+1

En OSX El Capitan, necesitaba usar 'ln -s' para que esto funcione. – geoff