【问题标题】:Is there a simpler way to extract/parse nested object values that is not fixed?有没有更简单的方法来提取/解析不固定的嵌套对象值?
【发布时间】:2019-09-06 00:46:17
【问题描述】:

我正在尝试使用 Zapier 的代码从 webhook 的结果中解析特定的嵌套对象 (Sign_UP_Appointment)

Webhook 结果

{
"entity":{
    "OPPORTUNITY_ID":24096201,
    "OPPORTUNITY_NAME":"Scott Williams ",
    "OPPORTUNITY_STATE":"OPEN",
    "RESPONSIBLE_USER_ID":1737942,
    "OWNER_USER_ID":1737942,
    "DATE_CREATED_UTC":"2019-04-15T17:02:11.567",
    "DATE_UPDATED_UTC":"2019-04-15T17:02:40.437",
    "VISIBLE_TO":"OWNER",
    "CUSTOMFIELDS":[
        {
            "CUSTOM_FIELD_ID":"Administration_Type__c",
            "FIELD_VALUE":"Summary Administration"
        },
        {
            "CUSTOM_FIELD_ID":"Initial_Appointment__c",
            "FIELD_VALUE":"2019-04-11T20:45:00"
        },
        {
            "CUSTOM_FIELD_ID":"Sign_Up_Appointment__c",
            "FIELD_VALUE":"2019-04-18T21:00:00"
        }
    ],
    "TAGS":[],
    "LINKS":[
        {
            "LINK_ID":205236388,
            "CONTACT_ID":287320999,
            "OPPORTUNITY_ID":24096201
        }
    ]
}
}

我只想返回自定义字段 (Sign_Up_Appointment__c)。我尝试了下面的代码,但问题在于订单更改的后续结果。有没有办法只过滤掉 Sign_Up_Appointment__c 对象?

const result = JSON.parse(inputData.body);
return {result: result, SignUpDate: result.entity.CUSTOMFIELDS[3]};

【问题讨论】:

    标签: arrays json zapier


    【解决方案1】:

    David 来自 Zapier 平台团队。

    是的!你可以使用Array.find:

    const result = JSON.parse(inputData.body);
    return {
      result,
      SignUpDate: result.entity.CUSTOMFIELDS.find(
        f => f.CUSTOM_FIELD_ID === "Sign_Up_Appointment__c"
      )
    };
    

    如果数组中没有包含 field_id 的字段,SignUpDate 将是 undefined(我不确定这种可能性有多大)

    【讨论】:

      猜你喜欢
      • 2018-09-30
      • 1970-01-01
      • 1970-01-01
      • 2020-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-15
      相关资源
      最近更新 更多