Question

Je souhaite exécuter une console Javascript au-dessus de V8. Comment je fais ça?

Était-ce utile?

La solution

La V8 est facile à créer et ne nécessite pas la surcharge de la machine virtuelle Java issue de l'interpréteur Javascript autonome de Mozilla. Heureusement, le V8 est livré avec un code pour la construction d'une console. Voici comment construire ceci:

<*>gt; ./v8-shell --help
Usage:
...
gt; ./v8-shell -e 'print("10*10 = " + 10*10)' 10*10 = 100
gt; ./v8-shell V8 version 2.0.2 > var x = 10; > x 10 > function foo(x) { return x * x; } > foo function foo(x) { return x * x; } > quit()
gt; svn co http://v8.googlecode.com/svn/trunk v8-trunk ... <*>gt; cd v8-trunk <*>gt; scons <*>gt; g++ ./samples/shell.cc -o v8-shell -I include libv8.a

Nous avons maintenant un binaire autonome appelé v8-shell .

Exécution de la console:

<*>

Exécution de Javascript à partir de la ligne de commande:

<*>

Plusieurs autres fonctionnalités sont décrites dans l'aide:

<*>

Autres conseils

Pour créer la console du développeur, plutôt que l'exemple d'application "shell", copiez-collez les commandes ci-dessous sur votre terminal.

sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8

Ces instructions fonctionneront pour Ubuntu / Debian avec un paramètre "générique". noyau. Pour les autres distributions, vous devrez remplacer la commande apt-get par l’outil de paquetage dont vous disposez. Sur les systèmes 64 bits, vous devrez peut-être ajouter arch = x64 . L’option console = readline permet au système readline de le rendre se sentir un peu plus comme un shell standard.

Documentation plus complète ici: http://code.google.com/apis/v8/build.html

Remarque:

entrer la description de l'image ici

Voir aussi: Construction de la v8 avec GYP

Pourquoi ne pas utiliser JavaScript V8 en ligne de commande à l'aide de node.js ?

node.js utilise la v8 en tant que moteur et ajoute de nombreuses fonctionnalités.

Par exemple, sur Mac OSX, si vous avez Homebrew installé, entrez simplement:

    $ brew install node
    $ node
    > 

Sous Mac OS X, assurez-vous d'avoir installé brew . Ensuite, exécutez simplement la commande (sudo) brew install v8 , cela peut prendre un certain temps en fonction de votre ordinateur. Pour démarrer la console V8, exécutez simplement v8 - Voilà!

Conseil: pour quitter la console, exécutez simplement quit () sans oublier les parenthèses!

Je pense que cela aurait pu changer. Je lire le manuel et construire la v8 comme suit:

moose@pc08$ svn co http://v8.googlecode.com/svn/trunk v8-trunk
moose@pc08$ cd v8-trunk
moose@pc08$ make dependencies
moose@pc08$ make ia32.release

ajouté export PATH = $ {PATH}: / home / orignal / Téléchargements / v8-trunk / out / ia32.release dans mon fichier .bashrc

moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in

(Avec javascript issu de aditsu et de A-small-practice. dans Google Code Jam)

Après avoir suivi les instructions de construction ( Documents de construction V8 de Google ) pour votre système;

[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)

J'ai créé un alias dans mon .bash_profile pour faciliter l'appel du shell.

alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'

Taper v8 au niveau de la CLI (dans un nouveau terminal ou un nouveau shell - pour recharger votre profil bash) donne le shell v8. JavaScript à l'invite de commande! :)

Si vous utilisez ArchLinux, vous pouvez utiliser pacman -S v8 pour l’installer. Ensuite, utilisez d8 pour le démarrer dans votre shell. Profitez-en.

Si vous envisagez d'intégrer la V8, construisez-la et jouez avec "d8".

Si, par contre, vous ne prévoyez pas d'étendre la version 8 ou de la traiter comme une option, puis utilisez simplement Node.JS. Ne vous embêtez pas avec le V8 pur.

Node.js possède de très riches E / S, extensions, bibliothèques (comme Perl CPAN, Oeufs Python, Ruby Gems) et une communauté.

Si vous souhaitez exécuter votre code source javascript à l'aide du moteur v8 ou de toute version de celui-ci, vous pouvez utiliser le jsvu , outil de ligne de commande. Développé et mis à jour par les ingénieurs de Google, il offre également la possibilité d’installer d’autres moteurs javascript que le v8 , tels que spidermonkey , chakracore , javascriptcore et xs .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top