You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Flutter中如何获取嵌套JSON属性的长度?

Flutter嵌套JSON属性长度获取方案

可以正常获取嵌套JSON中数组类型属性的长度,你无法找到length相关属性的核心原因是:json.decode()解析后所有值的默认类型为dynamic,编译器无法判定responseJson['obj1']['list1']是List类型,因此不会透出列表的长度属性。

正确实现代码

var response = await httpRequest.response;
Map<String, dynamic> responseJson = json.decode(response.data);
// 强制转换为List类型后调用length属性
int listLength = (responseJson['obj1']['list1'] as List).length;
print(listLength); // 对应示例JSON输出结果为3

安全优化写法(避免异常)

如果不确定嵌套字段是否存在、是否为数组类型,建议增加类型校验避免运行崩溃:

dynamic targetList = responseJson['obj1']?['list1'];
int safeLength = targetList is List ? targetList.length : 0;
print(safeLength);

内容的提问来源于stack exchange,提问作者crayden

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:36:03