Json não mantem ordem de criação

Boa tarde, pessoal!

Me deparei com uma situação usando Json no AdvPL que não sei dizer se é comportamento ou não conformidade.

Ao preencher um objeto Json e em seguida usar o método ToJson para obter a string, a ordem de criação das chaves não é mantida. Exemplo:

User Function TSTJSON
Local jJson
Local cJson

    jJson := JsonObject():New()

    jJson['texto1'] := 'teste1'
    jJson['numero'] := 1234
    jJson['texto2'] := 'teste2'

    cJson := jJson:ToJson()

Return

Ao usar o programa de exemplo acima, estou obtendo o seguinte retorno:

"{"texto1":"teste1","texto2":"teste2","numero":1234}"

O certo não seria assim?

"{"texto1":"teste1","numero":1234,"texto2":"teste2"}"

Se for comportamento, existe alguma forma de ao realizar o ToJson ele manter a ordem declarada?

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags advpl json jsonobject ou faça a sua própria pergunta.