4D v14.3

JSON Parse

Página Inicial

 
4D v14.3
JSON Parse

JSON Parse 


 

JSON Parse ( cadeiaJSON {; tipo} ) -> Resultado 
Parâmetro Tipo   Descrição
cadeiaJSON  cadeia in Cadeia em JSON a analisar
tipo  Inteiro longo in Tipo no qual converter os valores
Resultado  Booleano, Object, Ponteiro, Real, Texto in Valores extraídos da cadeia JSON

O comando JSON Parse analisa o conteúdo de uma cadeia com formato JSON e extraem os valores que podem armazenar em um campo ou variável 4D. Este comando não realiza os dados JSON, realiza a ação inversa do comando JSON Stringify.

Em cadeiaJSON, passe a cadeia com formato JSON cujo conteúdo deseja analisar. Esta cadeia deve ter o formato correto, caso contrário é gerado um erro de análise.

Nota: Se utilizar ponteiros, deve chamar ao comando JSON Stringify antes de chamar a JSON Parse.

Por padrão, se omitir o parâmetro tipo, 4D tentará converter o valor obtido no tipo da variável ou do campo que se utiliza para armazenar os resultados (se foi definido). Caso contrário, 4D tenta deduzir seu tipo. Também pode forçar a interpretação do tipo passando o parâmetro tipo: passe uma das seguintes constantes, disponíveis no tema Tipos de campos e variáveis:

Constante Tipo Valor
Is Boolean Inteiro longo 6
Is date Inteiro longo 4
Is LongInt Inteiro longo 9
Is real Inteiro longo 1
Is text Inteiro longo 2


Notas:

  • Os valores de tipo Real devem ser incluídos na classificação ± 10.421e±10
  • Nos valores de tipo de texto, todos os caracteres especiais devem ser evadidos, incluindo as aspas (ver exemplos)
  • As datas JSON devem estar no formato "\"YYYY-MM-DDTHH:mm:ssZ\"". O comando considera que a data 4D contém uma hora local e não GMT.

Exemplos de conversões simples:

 C_REAL($r)
 $r:=JSON Parse("42.17") //$r = 42,17 (Real)
 
 C_LONGINT($el)
 $el:=JSON Parse("120.13";Is LongInt//$el=120
 
 C_TEXT($t)
 $t:=JSON Parse("\"Year 42\"";Is text// $t="Year 42" (text)
 
 C_OBJECT($o)
 $o:=JSON Parse("{\"name\":\"jean\"}")
  // $o = {"name":"john"} (4D object)
 
 C_BOOLEAN($b)
 $b:=JSON Parse("{\"manager\":true}";Is Boolean// $b=true

Example of converting date type data:

 $test:=JSON Parse("\"1990-12-25T12:00:00Z\"")
  // $test=1990-12-25T12:00:00Z
 C_DATE($date)
 $date:=JSON Parse("\"2008-01-01T12:00:00Z\"";Is date)
  //$date=01/01/08

Este exemplo mostra o uso combinado dos comandos JSON Stringify e JSON Parse:

 C_TEXT($MyContact)
 C_OBJECT($Contact)
 
  // JSON Stringify: conversion of JSON object into a JSON string
 $MyContact:=JSON Stringify("{\"name\":\"Monroe\",\"firstname\":\"Alan\"}")
  // $MyContact = "{\\"name\\":\\"Monroe\\",\\"firstname\\":\\"Alan\\"}"
  // JSON Parse: conversion of JSON string into a JSON object
 $Contact:=JSON Parse("{\"name\":\"Monroe\",\"firstname\":\"Alan\"}")
  // $Contact = {"name":"Monroe","firstname":"Alan"}

 
PROPRIEDADES 

Produto: 4D
Tema: JSON
Número 1218

 
HISTÓRIA 

New
Criado por: 4D v14

 
VER TAMBÉM 

JSON PARSE ARRAY
JSON Stringify
Tipos de campos e variáveis

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)