goja 初窥

package main

import (
   "github.com/dop251/goja"
   "strings"
)

func main() {
   vm := goja.New()
   vm.Set("strings", MyObject)
   v, err := vm.RunString(
      `var o = new strings();
         o.toLower('AbcD');
         o.test('小明','北京');
      `) //默认输出最后一个
   if err != nil {
      panic(err)
   }
   println(v.Export().(string))
}

func MyObject(call goja.ConstructorCall) *goja.Object {
   call.This.Set("toLower", strings.ToLower)
   call.This.Set("test", testFunc)
   return nil
}

func testFunc(name, home string) string {
   return "姓名:" + name + "\r\n家住:" + home
}

猜你喜欢

转载自my.oschina.net/u/1766862/blog/1633056