JSON相关

本文为您介绍JSON相关函数的语法、说明、参数、返回值和示例。

json_enc

函数详细信息,请参见下表:

项目

描述

语法

json_enc(d)

说明

JSON编码。

参数

d:待编码的字典对象。

返回值

成功返回编码后的字符串,失败返回false

示例

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')))

输出:
json_enc={"k1":"v1","k2":["v1","v2"]}
json_dec=v1

json_dec

函数详细信息,请参见下表:

项目

描述

语法

json_dec(s)

说明

JSON解码。

参数

s:待解码的JSON格式字符串。

返回值

成功返回解码后的字典,失败返回false

说明

"123"这样的纯数字字符串也可以被成功解码为一个number类型的变量,如果后续对返回的字典有关联操作(比如get某个值),请配合使用type函数进行变量类型的判断。

示例

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)
}
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)
}

输出:
number
json_dec=v1