1
0
Fork 0
mirror of https://github.com/rails/execjs synced 2023-03-27 23:21:20 -04:00
execjs/README.md

46 lines
1.4 KiB
Markdown
Raw Normal View History

2011-02-06 15:22:40 -05:00
ExecJS
======
ExecJS lets you run JavaScript code from Ruby. It automatically picks
the best runtime available to evaluate your JavaScript program, then
returns the result to you as a Ruby object.
ExecJS supports these runtimes:
* [therubyracer](https://github.com/cowboyd/therubyracer) - Google V8
2011-02-07 11:07:54 -05:00
embedded within MRI Ruby
* [therubyrhino](https://github.com/cowboyd/therubyrhino) - Mozilla
Rhino embedded within JRuby
2011-04-12 12:28:17 -04:00
* [Mustang](https://github.com/nu7hatch/mustang) - Mustang V8
embedded within Ruby
2011-02-06 20:39:30 -05:00
* [Node.js](http://nodejs.org/)
2011-02-07 11:07:54 -05:00
* Apple JavaScriptCore - Included with Mac OS X
2011-02-06 15:22:40 -05:00
* [Mozilla Spidermonkey](http://www.mozilla.org/js/spidermonkey/)
2011-02-07 18:04:05 -05:00
* [Microsoft Windows Script Host](http://msdn.microsoft.com/en-us/library/9bbdkx3k.aspx) (JScript)
2011-02-06 15:22:40 -05:00
A short example:
require "execjs"
2011-02-06 20:09:07 -05:00
ExecJS.eval "'red yellow blue'.split(' ')"
2011-02-06 15:22:40 -05:00
# => ["red", "yellow", "blue"]
2011-03-10 18:21:55 -05:00
A longer example, demonstrating how to invoke the CoffeeScript compiler:
require "execjs"
require "open-uri"
source = open("http://jashkenas.github.com/coffee-script/extras/coffee-script.js").read
context = ExecJS.compile(source)
context.call("CoffeeScript.compile", "square = (x) -> x * x", :bare => true)
2011-03-10 18:38:33 -05:00
# => "var square;\nsquare = function(x) {\n return x * x;\n};"
# Installation
$ gem install execjs
# License
Copyright (c) 2011 Sam Stephenson and Josh Peek.
Released under the MIT license. See `LICENSE` for details.