Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Buscar
Buscar
español
Apariencia
Crear una cuenta
Acceder
Herramientas personales
No has accedido
Discusión
Contribuciones
Crear una cuenta
Acceder
Edición de «
Javascript-C
»
Página
Discusión
español
Leer
Editar
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Información de la página
Apariencia
mover a la barra lateral
ocultar
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
<div style="float:right;width:250px">__TOC__</div> [[Archivo:Jsc apicalling gif.gif|thumb|246px|'''Esquema de Flujo'''<br />Aquí se puede apreciar el "recorrido" de una instrucción mandada desde la aplicación. El primer paso lo inicia la aplicación que manda una instrucción , que luego, el motor de Javascript la interpreta y hace las manipulaciones pertinentes y después devuelve el valor.]] [[Archivo:Jsc apicalling con runtime gif.gif|thumb|246px|'''"Runtime",'''<br />o ''tiempo de pasada'', que es lo que se aprecia en esta imagen, con la función [[JSC:JS NewRuntime|JS_NewRuntime]] se pasa las instrucciones y devuelve el valor pertinente.]] Javascript-C es la versión [[SpiderMonkey]] de [[Fundación Mozilla|Mozilla]] ,es decir un '''lenguaje cruzado''', para la interpretación de objetos del mediante [[Gecko (motor de navegación)|Gecko]]-[[JavaScript]] invocado en [[C++]], lo que permite a la [[POO|Programación orientada a objetos]] hasta el [[Document Object Model|Modelo en Objetos para la representación de Documentos]] de una aplicación. Los archivos [[C++|*.c]], [[C++|*.h]] y [[C++|*.o]] se vinculan mediante unos '''#include''' por cada archivo, que para que funcione tiene que haber los archivos del [http://developer.mozilla.org/en/docs/JavaScript_C_Engine_Embedder%27s_Guide jsapi ] {{Wayback|url=http://developer.mozilla.org/en/docs/JavaScript_C_Engine_Embedder%27s_Guide |date=20060424125348 }} == Ejecución == El primer paso lo inicia la aplicación que manda una instrucción , que luego, el motor de Javascript la interpreta y hace las manipulaciones pertinentes y después devuelve un valor. Con la función JS_NewRuntime se pasa las instrucciones y devuelve el valor pertinente. == Versiones de respaldo del Javascript == Las ayudas de motor de JS ([[JavaScript]]) JS 1,0 JS directo 1,4. JS 1,3 y mayor se conforman con la especificación ECMAScript-262. En su más simple, el motor de JS analiza, compila, y ejecuta las escrituras que contienen declaraciones y funciones de JS. El motor maneja la asignación de memoria para los tipos de datos de JS y se opone necesario para ejecutar las escrituras, y limpia para arriba -- la basura recoge -- los tipos y los objetos de datos en la memoria esa él ningunas necesidades más largas. == Funcionamiento == Se solicita al motor de JS pudo ser una llamada a JS_NewObject para crear el objeto de encargo. Cuando el motor de JS crea el objeto, vuelve un indicador a su uso. Su uso puede entonces llamar el motor de JS otra vez para ejecutar las escrituras que utilizan el objeto. Por ejemplo, después de crear el objeto del usuario, su uso pudo pasar inmediatamente una escritura a JS_EvaluateScript para la compilación y ejecutarse inmediatamente. Que la escritura pudo conseguir y validar la información de un usuario, y entonces que establezca los derechos de acceso de usuario a otras características del uso. Lo que hace es que la aplicación manda una rutina de JS al JSAPI ( interfaz de programación en JS) y devuelve un JS que la aplicación la interpreta tal y como C++ Este sistema de programación es muy usado por [[Macromedia Dreamweaver]], [[Macromedia Flash]], [[Macromedia Fireworks]] == Tipos de valores == * '''JSVAL_IS_OBJECT''', el valor es un objeto. * '''JSVAL_IS_NUMBER''', el valor es un número, por ejemplo 459. * '''JSVAL_IS_INT''', el valor es un número entero, por ejemplo en 593,55 el entero es '593'. * '''JSVAL_IS_DOUBLE''', el valor que ''doble'', en [[programación]] se entiende como la parte decimal, en el ejemplo anterior sería '55'. * '''JSVAL_IS_STRING''', el valor es una cadena y se escribe entre comillas ("string"). * '''JSVAL_IS_BOOLEAN''' es un valor [[Álgebra de Boole|booleano]], es decir verdadero o falso. == Fragmentos de código== <pre> . . . #include <stdio.h> #include <stdlib.h> #include <string.h> /* include the JS engine API header */ #include "jsapi.h" . . . /* main function sets up global JS variables, including run time, * a context, and a global object, then initializes the JS run time, * and creates a context. */ int main(int argc, char **argv) { int c, i; /*set up global JS variables, including global and custom objects */ JSVersion version; JSRuntime *rt; JSContext *cx; JSObject *glob, *it; JSBool builtins; /* initialize the JS run time, and return result in rt */ rt = JS_NewRuntime(8L * 1024L * 1024L); /* if rt does not have a value, end the program here */ if (!rt) return 1; /* create a context and associate it with the JS run time */ cx = JS_NewContext(rt, 8192); /* if cx does not have a value, end the program here */ if (cx == NULL) return 1; /* create the global object here */ glob = JS_NewObject(cx, clasp, NULL, NULL); /* initialize the built-in JS objects and the global object */ builtins = JS_InitStandardClasses(cx, glob); . . . return 0; } </pre><font size=1>[http://developer.mozilla.org/en/docs/JavaScript_C_Engine_Embedder%27s_Guide ejemplo aquí] {{Wayback|url=http://developer.mozilla.org/en/docs/JavaScript_C_Engine_Embedder%27s_Guide |date=20060424125348 }}</font> == Véase también == * [[SpiderMonkey]]: Es para leer el Javascript C. * [[C++]]: Para vincular JS en C. * [[JavaScript]]: Artículo de Javascript. * [[SpiderMonkey|Artículo sobre Spidermonkey en la wiki en inglés]] == Enlaces externos == * [https://web.archive.org/web/20060630182849/http://developer.mozilla.org/en/docs/Category:JSAPI_Reference Referencia JSAPI] * * [https://web.archive.org/web/20060223013255/http://developer.mozilla.org/en/docs/JavaScript_C_Engine_Embedder%2527s_Guide%23Supported_Versions_of_JavaScript Guía del ''embembedor'' de JS-C] * * '''Grupos''' ** [http://groups.google.com/group/mozilla.dev.tech.js-engine Grupo:] Grupo de [[Google]] sobre el motor-JS * ** [http://groups.google.com/group/mozilla.dev.tech.js-engine/browse_thread/thread/a48b0b686a9a6796/e24502f5f727d02d?lnk=raot#e24502f5f727d02d Grupo:] Mensaje sobre la ejecución de [[JavaScript|JS]] en la aplicación desde [[SpiderMonkey]] * <!-- *[http://www.walterzorn.com/jsgraphics/jsgraphics_e.htm Script para APIDOM en la web para gráficos] --> (*) en inglés {{Control de autoridades}} [[Categoría:Lenguajes interpretados]] [[Categoría:Intérpretes de JavaScript]]
Resumen:
Al guardar los cambios aceptas los
términos de uso
y liberas de forma irrevocable tu contribución conforme a los términos de las licencias
licencia CC BY-SA 4.0
y
GFDL
. Aceptas igualmente que un hipervínculo o URL es atribución suficiente conforme a la licencia Creative Commons.
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Buscar
Buscar
Edición de «
Javascript-C
»
Añadir idiomas
Añadir tema