Sample code for 30+ languages & platforms
Delphi ActiveX

Eval JavaScript Returning Int

See more JavaScript Examples

Demonstrates getting the completion value of a JavaScript that returns an integer.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
sbScript: TChilkatStringBuilder;
js: TChilkatJs;
result: TChilkatJsonObject;

begin
success := 0;

// This example demonstrates getting the completion value of a script,
// where the last evaluated expression is an integer.

// The Javascript run in this example is shown below.

// Load the JavaScript from a file.
sbScript := TChilkatStringBuilder.Create(Self);
success := sbScript.LoadFile('js_eval_return_int.js','utf-8');
if (success = 0) then
  begin
    Memo1.Lines.Add(sbScript.LastErrorText);
    Exit;
  end;

js := TChilkatJs.Create(Self);
result := TChilkatJsonObject.Create(Self);

// Run the JavaScript
// Eval returns the completion value of the script. This is generally the value of the last evaluated expression.
// In this case, the last evaluated expression is an int.
success := js.Eval(sbScript.ControlInterface,result.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(sbScript.LastErrorText);
    Exit;
  end;

result.EmitCompact := 0;
Memo1.Lines.Add(result.Emit());

// Output:

// {
//   "type": "int",
//   "value": 42
// }
end;