![]() |
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
(PowerShell) 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.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll" $success = $false # ---------------------------------------------------------------------------------- # The Javascript functions called in this example are shown at the bottom of this page. # ----------------------------------------------------------------------------------- $sbScript = New-Object Chilkat.StringBuilder $success = $sbScript.LoadFile("js_function_returning_array.js","utf-8") if ($success -eq $false) { $($sbScript.LastErrorText) exit } $js = New-Object Chilkat.Js $result = New-Object Chilkat.JsonObject $result.EmitCompact = $false # Call Eval to add the function to the context's global object $success = $js.Eval($sbScript,$result) if ($success -eq $false) { # Examine the result for an exception. $($result.Emit()) # Also examine the LastErrorText. $($js.LastErrorText) exit } # ------------------------------------------------------------------------------ # Call each function $funcCall = New-Object Chilkat.JsonObject # Create JSON specifying the function name and arguments # The function has no arguments, so we only specify the name. $funcCall.UpdateString("name","getDays") $success = $js.CallFunction($funcCall,$result) if ($success -eq $false) { # Examine the result for an exception. $($result.Emit()) # Also examine the LastErrorText. $($js.LastErrorText) exit } $($result.Emit()) # Output: # { # "type": "array", # "value": [ # "Monday", # "Tuesday", # "Wednesday", # "Thursday", # "Friday" # ] # } # Access each array value.. $count = $result.SizeOfArray("value") $i = 0 while ($i -lt $count) { $result.I = $i $($result.StringOf("value[i]")) $i = $i + 1 } # ------------------------------------------------------------------------------ # Call the getRange(start,end) function $funcCall.Clear() $funcCall.UpdateString("name","getRange") $funcCall.UpdateInt("args[0]",14) $funcCall.UpdateInt("args[1]",21) $success = $js.CallFunction($funcCall,$result) $($result.Emit()) # Output: # { # "type": "array", # "value": [ # 14, # 15, # 16, # 17, # 18, # 19, # 20, # 21 # ] # } $count = $result.SizeOfArray("value") $i = 0 while ($i -lt $count) { $result.I = $i $($result.IntOf("value[i]")) $i = $i + 1 } # ------------------------------------------------------------------------------ # Call the getEmployees() function $funcCall.Clear() $funcCall.UpdateString("name","getEmployees") $success = $js.CallFunction($funcCall,$result) $($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 -lt $count) { $result.I = $i $("name: " + $result.StringOf("value[i].name")) $("role: " + $result.StringOf("value[i].role")) $("id: " + $result.IntOf("value[i].id")) $("") $i = $i + 1 }
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.