jsonDecode 函数
解析字符串并返回结果 Json 对象。
可选的 reviver
函数在解码过程中对每个被解析的对象或列表属性调用一次。参数 key
是列表属性的整数索引、对象属性的字符串键或者最终结果的 null
。
默认的 reviver
(当未提供时)是恒等函数。
是 json.decode
的缩写。如果局部变量遮蔽了全局 json 常量,则非常有用。
示例
const jsonString =
'{"text": "foo", "value": 1, "status": false, "extra": null}';
final data = jsonDecode(jsonString);
print(data['text']); // foo
print(data['value']); // 1
print(data['status']); // false
print(data['extra']); // null
const jsonArray = '''
[{"text": "foo", "value": 1, "status": true},
{"text": "bar", "value": 2, "status": false}]
''';
final List<dynamic> dataList = jsonDecode(jsonArray);
print(dataList[0]); // {text: foo, value: 1, status: true}
print(dataList[1]); // {text: bar, value: 2, status: false}
final item = dataList[0];
print(item['text']); // foo
print(item['value']); // 1
print(item['status']); // false
实现
dynamic jsonDecode(String source,
{Object? reviver(Object? key, Object? value)?}) =>
json.decode(source, reviver: reviver);