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

ADF中使用Foreach循环读取JSON脚本数组输出时遇到问题

嵌套JSON数组遍历解决方案

错误原因

你报错的核心问题是:result是数组类型(JSON里外层的[]标识),直接通过@activity('script').output.result.Val访问相当于在数组对象上查找Val属性,而数组本身没有这个属性,因此触发“无法计算长度,因为属性值不存在”的错误。

正确遍历方法

根据你的JSON结构,分两种场景处理:

场景1:result数组仅含1个元素(即当前输出结构)

直接定位到Val数组,将Foreach循环的数据源设置为:

@activity('script').output.result[0].Val

循环体内可通过@item().pqr或@item().srt访问每个子对象的属性。

场景2:result数组可能包含多个带Val的元素

需要嵌套遍历:

  1. 外层Foreach循环数据源设为:
    @activity('script').output.result
    
  2. 外层循环体内,针对当前元素的Val数组做内层遍历(或直接处理),内层数据源设为:
    @item().Val
    
    同样用@item().pqr/@item().srt访问子属性。

示例验证

用你的JSON输出测试:

  • 执行@activity('script').output.result[0].Val会返回:
    [{"pqr":1,"srt":2},{"pqr":1,"srt":2}]
    
    这是有效的数组,可正常被Foreach循环遍历。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 21:11:25