JSON Parse
JSON Parse ( cadenaJSON {; tipo}{; *} ) -> Resultado
Parámetro | Tipo | Descripción | |
---|---|---|---|
cadenaJSON | Cadena | 🡒 | Cadena en JSON a analizar |
tipo | Entero largo | 🡒 | Tipo en el cual convertir los valores |
* | Operador | 🡒 | Agrega la posición de la línea y el desplazamiento de cada propiedad si el valor devuelto es un objeto |
Resultado | Mixed, Objeto | 🡐 | Valores extraídos de la cadena JSON |
Descripción
__symbols:{//descripción del objeto
myAtt.mySubAtt...:{ //ruta de la propiedad
line:10, //número de línea de la propiedad
offset:35 //offset de la propiedad desde el principio de la línea
}
}
Ejemplo 1
Ejemplos de conversiones simples:
var $r : Real
$r:=JSON Parse("42.17") //$r = 42,17 (Real)
var $el : Integer
$el:=JSON Parse("120.13";Is longint) //$el=120
var $t : Text
$t:=JSON Parse("\"Year 42\"";Is text) // $t="Year 42" (text)
var $o : Object
$o:=JSON Parse("{\"name\":\"john\"}")
// $o = {"name":"john"} (4D object)
var $b : Boolean
$b:=JSON Parse("{\"manager\":true}";Is Boolean) // $b=true
var $h : Time
$h:=JSON Parse("5120";Is time) //$h=01:25:20
Ejemplo 2
Ejemplo de conversión de datos de tipo fecha:
$test:=JSON Parse("\"1990-12-25T12:00:00Z\"")
// $test="1990-12-25T12:00:00Z"
var $date;$date2;$date3 : Date
$date:=JSON Parse("\"2008-01-01T12:00:00Z\"";Is date)
//$date=01/01/08
$date2:=JSON Parse("\"2017-07-13T23:00:00.000Z\"";Is date)
//$date2=14/07/17 (Paris time zone)
SET DATABASE PARAMETER(Dates inside objects;String type without time zone)
$date3:=JSON Parse("\"2017-07-13T23:00:00.000Z\"";Is date)
//$date3=13/07/17
Ejemplo 3
Si la configuración de almacenamiento de fecha actual es "tipo fecha", puede escribir:
var $o : Object
var $json : Text
var $birthday : Date
$json:="{\"name\":\"Marcus\",\"birthday\":\"2017-10-16\"}"
$o:=JSON Parse($json)
$birthday:=$o.birthday
//$birthday=16/10/17
Nota: para más información sobre esta configuración, consulte la opción "Utilizar tipo fecha en lugar de formato de fecha ISO en objetos" en la Página Compatibilidad.
Ejemplo 4
Este ejemplo muestra el uso combinado de los comandos JSON Stringify y JSON Parse:
var $JSONContact : Text
var $Contact;$Contact2 : Object
$Contact:=New object("name";"Monroe";"firstname";"Alan")
// JSON Stringify: conversion of an object into a JSON string
$JSONContact:=JSON Stringify($Contact)
// JSON Parse: conversion of JSON string into a new object
$Contact2:=JSON Parse($JSONContact)
Ejemplo 5
Usted desea crear una colección 4D desde un array JSON:
var $myCol : Collection
$myCol:=JSON Parse("[\"Monday\",10,\"Tuesday\",11,\"Wednesday\",12,false]")
Ejemplo 6
{
"alpha": 4552,
"beta": [
{
"echo": 45,
"delta": "text1"
},
{
"echo": 52,
"golf": "text2"
}
]
}
Ver también
JSON PARSE ARRAY
JSON Stringify
JSON Validate
Tipos de campos y variables