Go語言開發的JavaScript解釋器:otto
這是一個采用原生Go語言開發的JavaScript分析器和解釋器。
// Create a new runtime Otto := otto.New()Otto.Run(
abc = 2 + 2 console.log("The value of abc is " + abc) // The value of abc is 4
)value, err := Otto.Get("abc") { // value is an int64 with a value of 4 value, _ := value.ToInteger() }
Otto.Set("def", 11) Otto.Run(
console.log("The value of def is " + def) // The value of def is 11
)Otto.Set("xyzzy", "Nothing happens.") Otto.Run(
console.log(xyzzy.length) // 16
)value, = Otto.Run("xyzzy.length") { // value is an int64 with a value of 16 value, := value.ToInteger() }
value, err = Otto.Run("abcdefghijlmnopqrstuvwxyz.length") if err != nil { // err = ReferenceError: abcdefghijlmnopqrstuvwxyz is not defined // If there is an error, then value.IsUndefined() is true ... }</pre>