B4X Requires Chilkat v11.4.0+
B4X
Call a JavaScript Function Returning a String
See more JavaScript Examples
Demonstrates how to call a JavaScript function that returns a string.Chilkat B4X Downloads
Dim success As Boolean = False
' This is the JavaScript function we'll call:
' function greet(name) {
' return "Hello, " + name + "!";
' }
Dim sbScript As ChilkatStringBuilder
sbScript.Initialize
sbScript.Append("function greet(name) { return " & Chr(34) & "Hello, " & Chr(34) & " + name + " & Chr(34) & "!" & Chr(34) & "; }")
Dim js As ChilkatJs
js.Initialize("js")
Dim result As ChilkatJsonObject
result.Initialize
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.
Log(result.Emit)
' Also examine the LastErrorText.
Log(js.LastErrorText)
Return
End If
' ------------------------------------------------------------------------------
' Call the function greet("Michael")
Dim funcCall As ChilkatJsonObject
funcCall.Initialize
' Create JSON specifying the function name and arguments
' {
' "name": "greet",
' "args": [ "Michael" ]
' }
funcCall.UpdateString("name", "greet")
funcCall.UpdateString("args[0]", "Michael")
success = js.CallFunction(funcCall, result)
If success = False Then
' Examine the result for an exception.
Log(result.Emit)
' Also examine the LastErrorText.
Log(js.LastErrorText)
Return
End If
Log(result.Emit)
' Output:
' {
' "type": "string",
' "value": "Hello, Michael!"
' }
Dim retval As String = result.StringOf("value")
Log(retval)
' Output:
' Hello, Michael!