Marcus, the TJSONObject.ToJSON function assumes key-value pairs. If I modify your code by adding a key to each array element (i.e. each array element is an object), then it should work:
procedure TForm1.WebButton1Click(Sender: TObject);
var
js: TJSON;
jo: TJSONObject;
begin
js := TJSON.Create;
jo := JS.Parse('{"myKey":"myValue", "anArray": [{"0":"one"}, {"1","two"}]}');
OutputDebugString(jo.ToJSON);
end;
var
js: TJSON;
jo: TJSONObject;
begin
js := TJSON.Create;
jo := JS.Parse('{"myKey":"myValue", "anArray": [{"0":"one"}, {"1","two"}]}');
OutputDebugString(jo.ToJSON);
end;