GO 调用脚本语言例子

packagemain

import(

"encoding/json"

"fmt"

"github.com/robertkrimen/otto"

)

var    testJsonstring=`{

"name":"tim",

"age":10,

"sites":["Google","Runoob","Taobao"],

"memo":{"info":"淘宝"}

}`

funcmain(){

varmapStrmap[string]interface{}

json.Unmarshal([]byte(testJson),&mapStr)

fmt.Println(mapStr["sites"])

vm:=otto.New()

vm.Set("mapStr",mapStr)

vm.Set("sites",mapStr["sites"])

vm.Set("memo",mapStr["memo"])

srcScript:=`

A=100;

B=200;

C=100;

console.log("Thesiteslen"+sites.length);

console.log("Thememoinfo"+memo.info);

console.log("ThemapStr.memo.infois"+mapStr.memo.info);

varid=Math.random();

`

_,err:=vm.Run(srcScript)

iferr!=nil{

fmt.Println(err.Error())

}

v,_:=vm.Get("memo")

v1,_:=v.Export()

v2,_:=v1.(map[string]interface{})

fmt.Println(v2["info"])

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容