Use estas funciones para codificar objetos de diccionario en cadenas JSON y decodificar cadenas JSON nuevamente en diccionarios.
json_enc
|
**Sintaxis** |
** |
|
Descripción |
Codifica un objeto de diccionario en una cadena JSON. |
|
Parámetros |
|
|
Valor de retorno |
Una cadena codificada en JSON si la operación es exitosa, o |
Ejemplo:
var_a = []
var_b = ['v1', 'v2']
set(var_a, 'k1', 'v1')
set(var_a, 'k2', var_b)
var_c = '{"k1":"v1","k2":["v1","v2"]}'
say(concat('json_enc=', json_enc(var_a)))
say(concat('json_dec=', get(json_dec(var_c), 'k1')))
Salida:
json_enc={"k1":"v1","k2":["v1","v2"]}
json_dec=v1
json_dec
|
**Sintaxis** |
** |
|
Descripción |
Decodifica una cadena JSON en un diccionario. |
|
Parámetros |
|
|
Valor de retorno |
Un diccionario si la operación es exitosa, o |
Una cadena numérica como "123" se decodifica en una variable de tipo número. Antes de operar con el valor decodificado (por ejemplo, al obtener un valor), use la función type para comprobar su tipo.
A continuación se muestran dos escenarios: la decodificación de una cadena numérica y la de un objeto JSON.
Ejemplo 1: decodificación de una cadena numérica
var_c = '123'
type_var_c = type(json_dec(var_c))
if eq(type_var_c, 'table') {
say(concat('json_dec=', get(json_dec(var_c), 'k1')))
} else {
say(type_var_c)
}
Salida:
number
Ejemplo 2: decodificación de un objeto JSON
var_c = '{"k1":"v1","k2":["v1","v2"]}'
type_var_c = type(json_dec(var_c))
if eq(type_var_c, 'table') {
say(concat('json_dec=', get(json_dec(var_c), 'k1')))
} else {
say(type_var_c)
}
Salida:
json_dec=v1