> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 返回数据处理

> 本页面介绍了如何处理接口返回的数据，特别是针对特定数值进行条件判断和转换的方法。示例中展示了根据数据的值来决定返回0还是100的过程，并提供了相应的JavaScript代码实现。

在这个函数中，我们可以对接口返回的数据进行处理。点击按钮可以看到如下图初始的函数体。其中第一个参数 data 就是返回的数据部分。你可以通过编写 JS，来对 data 进行处理，并最终返回。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1626178645933-87abf024-6e6c-42ce-94f7-c68b1c8ca079.png)
</Frame>

**示例：**

目前有如下接口返回数据，现在需要处理数值这一列，当值小于等于 0 的时候返回 0，大于 0 时 返回 100。

首先，来看一下接口的数据部分。data 的结构是一个数组，下图示例中总共有 4 项，对应表格中的 4 行；每项共有 2 个数据，对应表格中每行有 2 个数据值。接下来，我们需要确认数值到底对应 2 个数据中的哪一个。在这个示例中，因为数值和修改时间的数据格式有明显不同，我们可以一眼分辨出 **field\_kr1zcs45 对应的是数值， field\_kr1zcs49 对应的是日\_修改时间**。但是如果数据量比较大，难以一眼看出时，我们则可以通过 meta 字段信息来分析。我们找到 aliasName 包含「数值」的这项，其对应的 fieldId 为 **field\_kr1zcs45**。

<Frame>
  ![](https://yida-support.oss-cn-shanghai.aliyuncs.com/static/png/1626177730333-d884ea84-cd78-4376-a2f7-9c6dfb541f40.png)
</Frame>

最后，我们就可以来处理数据了

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
/**
* 对返回的数据做一些自定义处理
* 返回数据文档：https://www.yuque.com/yida/support/xgg4ps
* data: 返回的数据
* extraInfo: { meta: [], cardParams: {} }，meta 代表数据元信息，cardParams 代表卡片参数信息
*/
function afterFetch(data, extraInfo) {
  data.forEach(item => {
    // 判断数值是否大于 0
    if (item['field_kr1zcs45'] > 0) {
      // 大于 0 的话赋值为 100
      item['field_kr1zcs45'] = 100;
    } else {
      // 否则等于 0
      item['field_kr1zcs45'] = 0;
    }
  });
  return data;
}
```
