Outsmart
    Voltar para Zoho Deluge
    Zoho Deluge

    JSON no Deluge

    Por Victor•2021-08-05•4 min de leitura

    Overview sobre JSON.

    O que é JSON ?

    JSON (JavaScript Object Notation) basicamente é um formato leve de troca de dados e informações entre sistemas, baseado em texto derivado de JavaScript

    JSON define apenas duas estruturas de dados: objetos e matrizes. Um objeto é um conjunto de pares nome-valor e uma matriz é uma lista de valores. JSON define sete tipos de valor: string, número, objeto, matriz, verdadeiro, falso e nulo.

    JSON Sintaxe

    • Os dados são representados em pares nome / valor.
    • Os colchetes prendem objetos e cada nome é seguido por ':' (dois pontos), os pares nome / valor são separados por, (vírgula).
    • Os colchetes contêm matrizes e os valores são separados por, (vírgula).

    Abaixo um exemplo de JSON

    				
    					{
      "primeiroNome": "Joao",
      "segundoNome": "Silva",
      "idade": 18,
      "endereco": "Rua Dois",
      "cidade": "Minas Gerais",
      "contatos": [
        {"Movel": "111-111-1111"},
        {"Casa": "222-222-2222"}
      ]
    }
    				
    			

    Vantagens do JSON:

    • Leitura mais simples
    • Analisador(parsing) mais fácil
    • JSON suporta objetos
    • Velocidade maior na execução e transporte de dados
    • Arquivo com tamanho reduzido

    Agora que já sabemos o que é JSON e suas vantagens vamos ver como que funciona no Deluge.

    No Deluge temos duas funções para o JSON que é a getJSON e toJSONList abaixo vamos abordar cada uma delas.

    getJSON

    A   função getJSON recupera valores de um texto formatado em JSON ou uma coleção de valores-chave, usando uma chave.

    Sintaxe 

    <variavel>=<entrada>.getJson(<chave>);

    <variavel> Variável que contém o valor retornado. O tipo de dados deste parâmetro depende do tipo do valor retornado.
    <entrada> O texto formatado em JSON ou a coleção de valores-chave a partir da qual o valor da chave especificada precisa ser buscado.
    Observação: Se a entrada não for um TEXTO formatado em JSON ou não for uma coleção KEY-VALUE, um erro de tempo de execução será gerado.
    A chave cujo valor precisa ser retornado.
    Se a chave especificada não for encontrada, um valor nulo será retornado.

    O código abaixo criamos uma variável com formato JSON em seguida vamos obter esses dados e mostrar o nome de cada um que estão dentro dele.

    				
    					//Variavel em formato json
    func = "{"Dados":[{"Name":"Victor","Function":"Estagiario","Departament":"Tecnologia"},{"Name":"Fernando","Function":"CEO","Departament":"Tecnologia"}]}";
    // variavel que obtem os Dados
    lista = func.getJSON("Dados");
    // variável para criar coleção
    varFun = Collection();
    // Para cada elemento da lista 
    for each abc in lista
    {
    	//pega o nome
    	varFun.insert(abc.getJson("Name"));
    }
    //imprimir nome
    info varFun ;
    // Saida Victor,Fernando
    				
    			

    toJSONList

    A   função toJSONList pega uma matriz JSON de texto  como um argumento e a retorna como uma lista.

    Sintaxe

    <variavel>=<texto_json>.toJSONList();

    <variavel> Variável que conterá a lista JSON convertida.
    <texto_json> A matriz JSON de texto que precisa ser convertida em Lista JSON.

    O exemplo abaixo temos uma variável no formato JSON, vamos buscar os dados dela e transformar o JSON em lista.

    				
    					//variavel em JSON
    func = "{"Dados":[{"Name":"Victor","Function":"Estagiario","Departament":"Tecnologia"},{"Name":"Fernando","Function":"CEO","Departament":"Tecnologia"}]}";
    // variável que pega os dados no JSON
    dados = func.getJSON("Dados");
    // transfoforma JSON para Lista
    json_lista = dados.toJSONList();
    // criamos a lista
    varlista = List();
    // para cada item dentro da lista json_lista
    for each item in json_lista
    {
    	//adicionar Function dentro da variável lista varLista
    	varlista.add(item.getJSON("Function"));
    }
    // mostra resultado
    info varlista ;
    // Saída: Estagiario,CEO
    				
    			

    Converter Map para JSON

    Para converter um Map para JSON no Deluge usamos a seguinte sintaxe:

    				
    					// mapa que inserimos os parâmetros
    params = Map();
    // variável com os parâmetros
    funcionario1 = {"nome":"Maria","sobrenome":"Silva","departamento":"TI"};
    // variável com os parâmetros
    funcionario2 = {"nome":"Joao","sobrenome":"Silva","departamento":"RH"};
    //variável que atribui os dois parâmetros acima, nela 
    funcionario = {funcionario1,funcionario2};
    // inserimos matriz Funcionarios
    params.put("Funcionarios",funcionario);
    // imprime com formato de texto
    info params.toString();
    				
    			

    Saída na Console

    				
    					{
      "Funcionarios": [
        {
          "nome": "Maria",
          "sobrenome": "Silva",
          "departamento": "TI"
        },
        {
          "nome": "Joao",
          "sobrenome": "Silva",
          "departamento": "RH"
        }
      ]
    }
    				
    			

    Converter List para JSON

    Para converter uma List para JSON usamos a seguinte sintaxe:

    				
    					// cria lista 
    funcionarios = List();
    // variável com atributos em lista
    funcionario1 = {"nome":"Maria","sobrenome":"Silva","departamento":"TI"};
    // adiciona variável na lista 
    funcionarios.add(funcionario1);
    // variável com atributos em lista
    funcionario2 = {"nome":"Joao","sobrenome":"Silva","departamento":"RH"};
    // adiciona variável na lista 
    funcionarios.add(funcionario2);
    // Adicionamos um par de colchetes e usamos o to toString para que o formato saia em JSON 
    funcionariosJSON = "[" + funcionarios.toString() + "]";
    //mostra JSON
    info funcionariosJSON;
    				
    			

    Saída da Console

    				
    					[
      {
        "nome": "Maria",
        "sobrenome": "Silva",
        "departamento": "TI"
      },
      {
        "nome": "Joao",
        "sobrenome": "Silva",
        "departamento": "RH"
      }
    ]
    				
    			

    Artigos relacionados