JSON - Global

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 4 min. de leitura
  • . JSON A inclusão de script fornece métodos para criar objetos JSON a partir de uma cadeia de caracteres e transformar objetos JSON em cadeias de caracteres.

    Esta API tem métodos dinâmicos e estáticos. Para acessar os métodos dinâmicos, crie um objeto JSON. Para usar os métodos dinâmicos em uma aplicação com escopo, adicione o prefixo global ao chamar o construtor. Você acessa os métodos estáticos usando o objeto JSON estático.

    O objeto JSON nativo JavaScript ES5 é usado em vez dos métodos estáticos JSON. Se o script precisar do comportamento antigo, use codificar() e. decodificar() métodos.

    Este exemplo cria um objeto JSON.
    // obj is a JSON formatted object
    var parser = new JSON(); // encode() and decode() are dynamic methods.
    var str = parser.encode(obj);

    . codificar() e. decodificar() os métodos estão descontinuados. Em vez disso, use o objeto JavaScript JSON.

    Este exemplo cria um objeto JSON em um script com escopo.
    // obj is a JSON formatted object
    var parser = new global.JSON();
    var str = parser.encode(obj);
    
    Este exemplo usa os métodos estáticos.
    // obj is a JSON formatted object
    var str =  JSON.stringify(obj);
    // str is a string containing content to be turned into a JSON formatted object
    var obj = JSON.parse(str);
    

    JSON - JSON()

    Cria uma instância da classe JSON.

    Esta classe foi descontinuada. Em vez disso, use o objeto JavaScript JSON.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum

    Decodificar (cadeia de caracteres str)

    Cria um objeto ou tipo primitivo a partir de uma cadeia de caracteres formatada em JSON.

    Nota:
    Esta classe foi descontinuada. Em vez disso, use o objeto JavaScript JSON.
    Tabela 2. Parâmetros
    Nome Tipo Descrição
    str Cadeia de caracteres Uma cadeia de caracteres formatada JSON.
    Tabela 3. Retornos
    Tipo Descrição
    Objeto Um objeto criado a partir da cadeia de caracteres especificada.
    var str = '{"name":"George","lastname":"Washington"}';
    var parser = new JSON();
    var obj = parser.decode(str);
    gs.info('The first name is '  + obj.name);

    Saída: O nome é George

    Para usar em um script com escopo.

    var str = '{"name":"George","lastname":"Washington"}';
    var parser = new global.JSON();
    var obj = parser.decode(str);
    gs.info('The first name is '  + obj.name);

    Saída: O nome é George

    Encode(Object jsonObject)

    Cria uma cadeia de caracteres a partir de um objeto JSON.

    Nota:
    Esta classe foi descontinuada. Em vez disso, use o objeto JavaScript JSON.
    Tabela 4. Parâmetros
    Nome Tipo Descrição
    JsonObject Objeto O objeto JSON a ser transformado em uma cadeia de caracteres.
    Tabela 5. Retornos
    Tipo Descrição
    Cadeia de caracteres Uma cadeia de caracteres formatada JSON.
    var obj = {"name":"George","lastname":"Washington"};
    var parser = new JSON();
    var str = parser.encode(obj);
    gs.info('The object '  + str);

    "Lastname":"Washington","name":"George"

    Para usar em um script com escopo.

    var obj = {"name":"George","lastname":"Washington"};
    var parser = new global.JSON();
    var str = parser.encode(obj);
    gs.info('The object '  + str);

    Parse (cadeia de caracteres str)

    Cria um objeto ou tipo primitivo a partir de uma cadeia de caracteres formatada em JSON.

    O objeto JSON nativo JavaScript ES5 é usado em vez dos métodos estáticos JSON. Se o script precisar do comportamento antigo, use codificar() e. decodificar() métodos.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    str Cadeia de caracteres Uma cadeia de caracteres formatada JSON.
    Tabela 7. Retornos
    Tipo Descrição
    Objeto Um objeto criado a partir da cadeia de caracteres especificada.
    var str = '{"name":"George","lastname":"Washington"}';
    var obj = JSON.parse(str);
    gs.info('The first name is '  + obj.name);

    Saída: O nome é George

    Stringify (Object jsonObject)

    Cria uma cadeia de caracteres a partir de um objeto JSON.

    . JSON.stringify() O método só pode converter números, cadeias de caracteres e objetos nativos Java em cadeias de caracteres. Ele não pode converter objetos definidos pelo usuário em cadeias de caracteres, a menos que esses objetos forneçam um ToJSON() método. A chamada para sys_id_current() Retorna um objeto GlideElement que não tem um ToJSON() , portanto, o valor de retorno para stringify está vazio: "". O objeto JSON nativo JavaScript ES5 é usado em vez dos métodos estáticos JSON. Se o script precisar do comportamento antigo, use codificar() e. decodificar() métodos.

    JSON.stringify() Converte um valor em notação JSON usando as seguintes diretrizes:
    • Se o valor tiver um ToJSON() , é responsável por definir os dados serializados.
    • Objetos boolianos, numéricos e de cadeia de caracteres são convertidos para os valores primitivos correspondentes durante a stringification; de acordo com a semântica de conversão tradicional.
    • Se uma função, indefinida ou um símbolo for encontrado durante a conversão, ele será omitido (quando for encontrado em um objeto) ou censurado para nulo (quando for encontrado em uma matriz). JSON.stringify() também retorna indefinido ao passar valores "puros", como JSON.stringify(function()) ou JSON.stringify (indefinido) .
    • Todas as propriedades com chave de símbolo são ignoradas, mesmo ao usar um substituto() função.
    • As instâncias de Data implementam o. ToJSON() retornando uma cadeia de caracteres (a mesma que ISOString() portanto, eles são tratados como cadeias de caracteres.
    • Os números infinito e NaN, bem como o valor nulo, são considerados nulos.
    • Para todas as outras instâncias de objeto, somente suas propriedades enumeráveis são serializadas.
    Tabela 8. Parâmetros
    Nome Tipo Descrição
    JsonObject Objeto Objeto JSON a ser transformado em uma cadeia de caracteres.
    Tabela 9. Retornos
    Tipo Descrição
    Cadeia de caracteres Cadeia de caracteres formatada JSON.
    var obj = {"name":"George","lastname":"Washington"};
    var str =  JSON.stringify(obj);
    gs.info('The object '  + str);
    

    Saída: O objeto ("name":"George","lastname":"Washington")

    Também é possível definir um substituto() e use isso no stringify() chamada. Esta função aproveita o. GlideElement.toString() Método para fornecer uma representação de cadeia de caracteres do objeto GlideElement.

    function replacer(name, val) {
       // convert GlideElement to string
       if ( val && val.constructor === GlideElement ) {
           return val.toString();
       } else {
           return val; // return as is
       }
    };
    
    var s = global.JSON.stringify(json_obj, replacer);
    gs.info("json="+s);