Delphi ActiveX
Delphi ActiveX
Understanding JSON Array vs JSON Object
See more JSON Examples
This example explains the difference between a JSON Array and a JSON Object. A JSON Array begins with "[" and ends with "]", whereas a JSON Object begins with "{" and ends with "}".Elements contained in a JSON array are accessed by index, whereas elements in a JSON object are typically accessed by name (but can also be accessed by index).
Chilkat Delphi ActiveX Downloads
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;
strJsonArray: WideString;
jsonA: TChilkatJsonArray;
strJsonObj: WideString;
jsonO: TChilkatJsonObject;
begin
success := 0;
// A JSON array should be loaded into a Chilkat JSON array,
// whereas a JSON object should be loaded into a Chilkat JSON object.
// A JSON array may contain objects, and a JSON object may contains arrays, but
// it is the top-level (outermost) element that defines whether the JSON
// document is an array or an object.
// An array begins and ends with "[" ... "]"
// An object begins and ends with "{" ... "}"
// For example, an array containing 2 objects:
strJsonArray := '[ { "name": "Bill" }, { "name": "Ted" } ]';
// Load it into a JSON array.
jsonA := TChilkatJsonArray.Create(Self);
success := jsonA.Load(strJsonArray);
Memo1.Lines.Add('number of array elements: ' + IntToStr(jsonA.Size));
// This is an object containing an array:
strJsonObj := '{ "characters": [ "Bill", "Ted" ] }';
// Load it into a JSON object.
jsonO := TChilkatJsonObject.Create(Self);
success := jsonO.Load(strJsonObj);
Memo1.Lines.Add('number of object members: ' + IntToStr(jsonO.Size));
end;