go执行js代码
下载扩展 "github.com/robertkrimen/otto"
Js代码
function add(a,b) {
return a+b
}
go代码
/*
调用js脚本
*/
func JsParser(filePath string, functionName string, args ...interface{}) (result string) {
//读入文件
bytes, err := ioutil.ReadFile(filePath)
if err != nil {
panic(err)
}
vm := otto.New()
_, err = vm.Run(string(bytes))
if err != nil {
panic(err)
}
value, err := vm.Call(functionName, nil, args...)
if err != nil {
panic(err)
}
return value.String()
}
func main() {
rt := JsParser("./t1.js", "encrypt", 5,3)
fmt.Println(rt)
}