当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Dart jsonDecode用法及代码示例


dart:convert 库中jsonDecode 函数的用法介绍如下。

用法:

dynamic jsonDecode(
   String source,    
   {Object? reviver(
   Object? key,    
   Object? value   
)?}   
)

解析字符串并返回生成的 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

相关用法


注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 jsonDecode function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。