![]() |
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
(CkPython) Call a JavaScript Function Returning an IntegerSee more JavaScript ExamplesDemonstrates how to call a JavaScript function that returns an integer.Note: This example requires Chilkat v11.4.0 or greater.
import sys import chilkat success = False # ---------------------------------------------------------------------------------- # The Javascript function called in this example is shown at the bottom of this page. # ----------------------------------------------------------------------------------- # In this example, we'll load the Javascript function definition from a file. # It doesn't need to come from a file. It could just as easily be loaded from a string. sbScript = chilkat.CkStringBuilder() success = sbScript.LoadFile("js_call_function.js","utf-8") if (success == False): print(sbScript.lastErrorText()) sys.exit() # Note: Each instance of a Chilkat Js object automatically establishes # its own internal runtime and context. Applications do not need to explicitly create # the JavaScript runtime or context. js = chilkat.CkJs() result = chilkat.CkJsonObject() result.put_EmitCompact(False) # Call Eval to add the function (shown at the bottom of this page) to the context's global object success = js.Eval(sbScript,result) if (success == False): # Examine the result for an exception. print(result.emit()) # Also examine the LastErrorText. print(js.lastErrorText()) sys.exit() print(result.emit()) # The expected output is "undefined": # { # "type": "undefined", # "value": "undefined" # } # When Eval processes a script containing only a function declaration, # it successfully performs the action (the function becomes defined). # However, since the script consists of a statement that produces no value, # the script's overall completion value is empty. In JavaScript, the # absence of a value is represented by `undefined`. # # Therefore, the Eval call returns `undefined`. # ------------------------------------------------------------------------------ # Call the function calculateScore("Player1", 10, 20) funcCall = chilkat.CkJsonObject() # Create JSON defining the function call: # { # "name": "calculateScore", # "args": [ "Player1", 10, 20 ] # } funcCall.UpdateString("name","calculateScore") funcCall.UpdateString("args[0]","Player1") funcCall.UpdateInt("args[1]",10) funcCall.UpdateInt("args[2]",20) funcCall.put_EmitCompact(False) print(funcCall.emit()) success = js.CallFunction(funcCall,result) if (success == False): # Examine the result for an exception. print(result.emit()) # Also examine the LastErrorText. print(js.lastErrorText()) sys.exit() print(result.emit()) # Output: # { # "type": "int", # "value": 37 # } retval = result.IntOf("value") print("retval = " + str(retval))
|
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.