【问题标题】:Get length of nested JSON property in Flutter在 Flutter 中获取嵌套 JSON 属性的长度
【发布时间】:2021-10-30 23:14:48
【问题描述】:

下面的 dart 代码使用 json.decode() 访问嵌套的 JSON 属性,但似乎没有 countlengthsize 的属性。

是否可以在 Flutter 中获取嵌套 JSON 属性的长度?

JSON 响应

{
    "obj1":{
        "list1":[
            {"key1":"value1"},
            {"key2":"value2"},
            {"key3":"value3"}
        ]
    }
}

飞镖代码

var response = await httpRequest.response;
Map<String, dynamic> responseJson = json.decode(response.data);
print(responseJson['obj1']['list1']); // How to get length?

【问题讨论】:

    标签: json flutter dart


    【解决方案1】:

    您可以使用 length 属性获取地图的长度。它会给你地图(或子地图)上的对数:

        print(responseJson['obj1'].length);
        result: 1
        print(responseJson['obj1']['list1'].length);   
        result 3
    

    【讨论】:

    • 我从来没有被 Android Studio 如此误导过。 length 在自动完成的属性列表中不可用。
    • @crayden 仅供参考,因为解码后的 json 响应中的数据类型是动态的。如果您将其转换为列表final list = responseJson['obj1']['list1'] as List,那么您将获得列表的自动完成。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 1970-01-01
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多