Функция 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);
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-convert/jsonDecode.html