Sample code for 30+ languages & platforms
Xojo Plugin Requires Chilkat v11.4.0+

Call a JavaScript Function Returning a String

See more JavaScript Examples

Demonstrates how to call a JavaScript function that returns a string.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

//  This is the JavaScript function we'll call:

//  function greet(name) {
//      return "Hello, " + name + "!";
//  }

Dim sbScript As New Chilkat.StringBuilder
success = sbScript.Append("function greet(name) { return ""Hello, "" + name + ""!""; }")

Dim js As New Chilkat.Js

Dim result As New Chilkat.JsonObject
result.EmitCompact = False

//  Call Eval to add the function to the context's global object
success = js.Eval(sbScript,result)
If (success = False) Then
    //  Examine the result for an exception.
    System.DebugLog(result.Emit())

    //  Also examine the LastErrorText.
    System.DebugLog(js.LastErrorText)
    Return
End If

//  ------------------------------------------------------------------------------
//  Call the function greet("Michael")

Dim funcCall As New Chilkat.JsonObject

//  Create JSON specifying the function name and arguments

//  {
//    "name": "greet",
//    "args": [ "Michael" ]
//  }

success = funcCall.UpdateString("name","greet")
success = funcCall.UpdateString("args[0]","Michael")

success = js.CallFunction(funcCall,result)
If (success = False) Then
    //  Examine the result for an exception.
    System.DebugLog(result.Emit())

    //  Also examine the LastErrorText.
    System.DebugLog(js.LastErrorText)
    Return
End If

System.DebugLog(result.Emit())

//  Output:
//  {
//    "type": "string",
//    "value": "Hello, Michael!"
//  }

Dim retval As String
retval = result.StringOf("value")
System.DebugLog(retval)

//  Output:
//  Hello, Michael!