¿Cuál es la diferencia entre .jsx y .js?

Soy nuevo en Adobe Scripting. ¿Cuál es la diferencia entre .jsx y .js?

Respuestas (1)

El motor de secuencias de comandos que utiliza Adobe se llama ExtendScript, que es un dialecto de JavaScript, o más exactamente EcmaScript. Hay muchos dialectos de JavaScript con diferentes bibliotecas y algunas declaraciones de preprocesador únicas. ExtendScript tiene una serie de bibliotecas que no están disponibles en otros lugares. JavaScript tiene ciertas características básicas que los hacen similares y, a menudo, compatibles, pero tienen detalles de API diferentes. Entonces, ExtendScript tiene muchos comandos diferentes de JavaScript en un navegador.

¿Por qué una extensión diferente? En pocas palabras, eso permite que el sistema operativo Windows reconozca que tiene la intención de ejecutar el script con el intérprete de Adobe. Existe un mecanismo algo similar en OS X. En Windows, por ejemplo, un archivo con la extensión * .js iniciará de forma predeterminada el intérprete de script de Microsoft que se llama JScript, que nuevamente es un dialecto de EcmaScript con bibliotecas a diferencia de ExtendScript, a diferencia de los navegadores y a diferencia de NodeJS. ...

(JScript también puede comunicarse con el software de Adobe, pero a través de un puente COM como Visual Basic, pero a diferencia de ExtendScript, también puede comunicarse con muchos más componentes de Windows, como el sistema operativo, y muchos más programas instalados, como Excel o una aplicación de CAD, por ejemplo, pero siendo IPC es un poco diferente)

En realidad, la extensión no importa... siempre y cuando indique qué software debe hacer qué con el archivo. Simplemente es más conveniente tener un manejo automático de archivos.

Si bien la explicación es correcta, tenga en cuenta que, en cierto sentido, también puede ser menos conveniente usar .jsx: en OS X, por ejemplo, no puede buscar texto en archivos .jsx a través de Spotlight, mientras que con archivos .js sí puede. Finder tampoco muestra vistas previas de texto con archivos .jsx, mientras que con archivos .js sí lo hace. Por esos motivos, cambié a usar solo .js cuando desarrollo nuevos scripts de ExtendScript, ya que lo encuentro más conveniente.
@mdomino, probablemente pueda registrar jsx como un archivo de texto para la búsqueda del buscador. Lo mismo sucede en Windows, pero es bastante trivial agregar jsx como uno de los archivos que previsualiza y busca como texto que, en mi opinión, es una mejor opción. Ahora, solo pude hacer lo mismo con los archivos ai y convencerlos de obtener una vista previa como PDF, pero nadie parece saber cómo hacerlo.
Comenzaría aquí si quisiera cambiar jsx para buscar en mac @mdomino
Gracias, no sabía eso. Sin embargo, no he encontrado ninguna desventaja al usar .js en lugar de .jsx, así que creo que me quedaré con él (además, uso Sublime para desarrollar mis scripts ExtendScript).
@mdomino bueno, como dije, no importa cuál sea su extensión. Sin embargo, para un usuario promedio, puede ser mejor quedarse como jsx, también es más útil si desarrolla JavaScripts para múltiples plataformas si todo lo que hace es ExtendScript , entonces no hay problema, pero si alguna vez comienza a usar Node.Js obtiene una interdicción adicional en arriba de esto. Es por eso que si yo fuera usted, configuraría jsx y establecería un editor predeterminado sublime para jsx de esa manera, no intentaría ejecutar algo destinado a NodeJs o un navegador en el contexto de Adobe. También hace que sea más fácil compartir con los principiantes.
Punto justo. Como, de hecho, todo lo que hago es ExtendScript, me quedaré con .js, pero para el usuario promedio, .jsx podría tener más sentido. Solo estaba tratando de señalar que uno no puede buscar archivos .jsx (al menos de forma predeterminada).