在python中运行javascript引擎v8
v8eval的Python项目详细描述
多语言绑定到javascript引擎v8。
目前v8eval为最新的v8提供go、python和ruby绑定 7.1并支持Linux和Mac OS X。v8eval使用swig并可以 很容易扩展到其他语言。
安装
由于V8版本的原因,安装需要几十分钟。
开始
v8eval需要1.10或更高版本。
git clone https://github.com/sony/v8eval.git ${GOPATH}/src/github.com/sony/v8eval ${GOPATH}/src/github.com/sony/v8eval/go/build.sh install
对于Linux,您需要使用 build.sh:
${GOPATH}/src/github.com/sony/v8eval/go/build.sh go build
Python
pip install v8eval
红宝石
gem install v8eval
文档
开始
Python
您可以在python/docs下创建sphinx文档。
python/build.sh docs
红宝石
您可以在ruby/doc下创建yard文档。
ruby/build.sh docs
示例
开始
import"github.com/sony/v8eval/go/v8eval"funcAdd(x,yint)int{varv8=v8eval.NewV8()v8.Eval("var add = (x, y) => x + y;",nil)varsumintv8.Call("add",[]int{x,y},&sum)returnsum}
Python
importv8evaldefadd(x,y):v8=v8eval.V8()v8.eval('var add = (x, y) => x + y;')returnv8.call('add',[x,y])
红宝石
require'v8eval'defadd(x,y)v8=V8Eval::V8.newv8.eval('var add = (x, y) => x + y;')v8.call('add',[x,y])end