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

Power Automate中遍历由字典对象组成的对象的实现方法咨询

Power Automate中遍历由字典对象组成的对象的实现方法咨询

嗨,我来帮你搞定这个Power Automate里遍历嵌套字典对象的问题!你现在的需求是动态遍历外层的键,然后访问每个子字典的属性,其实用内置的动作和表达式就能轻松实现,我给你一步步拆解:

首先,先把你的源对象妥善存放,建议用一个Compose动作(比如命名为“源嵌套字典对象”),把你提供的JSON内容填进去,注意把"替换成标准的双引号,正确的JSON格式应该是:

{
    "Prop1": {
      "value": "test",
      "displayName": "test",
      "fieldType": "string",
      "text": "test"
    },
    "Prop2": {
      "value": "temp",
      "displayName": "temp",
      "fieldType": "string",
      "text": "temp"
    }
}

接下来分两种常用的实现方式:

方式一:通过循环逐个处理每个键和子对象

  • 新增一个Compose动作(命名为“所有外层键”),输入表达式:
    keys(outputs('源嵌套字典对象'))
    
    这个表达式会提取出外层所有的键,也就是["Prop1", "Prop2"]这样的数组。
  • 添加Apply to each动作,把“所有外层键”的输出作为循环的输入,这样就会逐个遍历每个键。
  • 在循环内部,你就可以访问当前键对应的子对象及其属性了:
    • 要获取完整的子对象,用表达式:
      outputs('源嵌套字典对象')[items('Apply_to_each')]
      
    • 要直接访问子对象的某个属性(比如value),用表达式:
      outputs('源嵌套字典对象')[items('Apply_to_each')]?['value']
      
      这里的?是可选链操作符,能避免因为键不存在导致的流程报错,非常实用。
      你可以把这些表达式放到Compose动作里,或者直接用在后续的业务动作中(比如发送邮件、写入列表等)。

方式二:用Select动作一次性映射所有键和属性

如果你不需要逐个处理,只是想把键和对应的属性整理成结构化的列表,可以用Select动作:

  • 在Select的“From”输入框中,填入表达式keys(outputs('源嵌套字典对象'))。
  • 在“映射”区域,自定义你需要的字段:
    • 比如添加“外层键”,值填item();
    • 添加“Display名称”,值填outputs('源嵌套字典对象')[item()]?['displayName'];
    • 添加“字段值”,值填outputs('源嵌套字典对象')[item()]?['value'];
  • 运行后,Select的输出就是一个包含所有键和对应属性的数组,后续可以直接用这个数组做批量操作。

最后提醒一下,确保你的源对象在Power Automate里是被正确解析成JSON对象的,如果是从其他地方获取的字符串,记得先用Parse JSON动作把它转换成对象,这样表达式才能正常访问属性哦!

备注:内容来源于stack exchange,提问作者Mohamad Al Asmar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.15 11:54:29