![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Xojo Plugin) Call a JavaScript Function Returning an ArraySee more JavaScript ExamplesDemonstrates how to call a JavaScript function that returns an array.Note: This example requires Chilkat v11.4.0 or greater.
Dim success As Boolean success = False // ---------------------------------------------------------------------------------- // The Javascript functions called in this example are shown at the bottom of this page. // ----------------------------------------------------------------------------------- Dim sbScript As New Chilkat.StringBuilder success = sbScript.LoadFile("js_function_returning_array.js","utf-8") If (success = False) Then System.DebugLog(sbScript.LastErrorText) Return End If 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 each function Dim funcCall As New Chilkat.JsonObject // Create JSON specifying the function name and arguments // The function has no arguments, so we only specify the name. success = funcCall.UpdateString("name","getDays") 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": "array", // "value": [ // "Monday", // "Tuesday", // "Wednesday", // "Thursday", // "Friday" // ] // } // Access each array value.. Dim count As Int32 count = result.SizeOfArray("value") Dim i As Int32 i = 0 While i < count result.I = i System.DebugLog(result.StringOf("value[i]")) i = i + 1 Wend // ------------------------------------------------------------------------------ // Call the getRange(start,end) function funcCall.Clear success = funcCall.UpdateString("name","getRange") success = funcCall.UpdateInt("args[0]",14) success = funcCall.UpdateInt("args[1]",21) success = js.CallFunction(funcCall,result) System.DebugLog(result.Emit()) // Output: // { // "type": "array", // "value": [ // 14, // 15, // 16, // 17, // 18, // 19, // 20, // 21 // ] // } count = result.SizeOfArray("value") i = 0 While i < count result.I = i System.DebugLog(Str(result.IntOf("value[i]"))) i = i + 1 Wend // ------------------------------------------------------------------------------ // Call the getEmployees() function funcCall.Clear success = funcCall.UpdateString("name","getEmployees") success = js.CallFunction(funcCall,result) System.DebugLog(result.Emit()) // Output: // { // "type": "array", // "value": [ // { // "id": 101, // "name": "Alice", // "role": "Dev" // }, // { // "id": 102, // "name": "Bob", // "role": "Manager" // } // ] // } count = result.SizeOfArray("value") i = 0 While i < count result.I = i System.DebugLog("name: " + result.StringOf("value[i].name")) System.DebugLog("role: " + result.StringOf("value[i].role")) System.DebugLog("id: " + Str(result.IntOf("value[i].id"))) System.DebugLog("") i = i + 1 Wend
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.