将响应从 api 转换为具有特定格式的对象

毫米

我有这个来自 api 的回复

columns: Array(4)
0: "Id"
1: "Title"
2: "Description"
3: "IsActive"

我需要将它转换为这种格式,所以会有“字段”,在字段下它会列出来自 api 响应的值,并且在每个值上都会有类型,我还需要确定它是 Id 还是 IsActive 那么它将是数字。我只允许遵循这种特定的对象格式,而且我需要支持 IE 浏览器

fields: {
Id: { type: "number" },
Title: { type: "string" },
Description: { type: "string" },
IsActive: { type: "number" }
}
斯科特·索耶

您需要在某处包含有关哪些类型是数字的附加信息。该解决方案将这些存储在一个数组中,将该数组传递给一个函数,并取回一个函数,该函数接受一个列数组并返回一个字段定义对象。

const makeFields = (numericTypes) => (columns) => columns.reduce(
  (a, s) => ({...a, [s]: {type: numericTypes.includes(s) ? 'numeric' : 'string'}}),
  {}
)

const numericTypes = ['Id', "IsActive"]
const columns = ["Id", "Title", "Description", "IsActive"]

console.log(makeFields(numericTypes)(columns))

您可以使用类似的内容保存该中间函数,const makeMyFields = makeFields(numericTypes)然后将其用作makeMyFields(columns)

更新

这是另一个应该在 IE 中工作的版本(未经测试):

const makeFields = function(numericTypes) {
  return function(columns) {
    return columns.reduce(function(a, s) {
      a[s] = {type: numericTypes.includes(s) ? 'numeric' : 'string'}
      return a
    }, {})
  }
}

更新 2

您在运行此代码时遇到问题。我猜你提供的参数不正确。请注意,此版本要求您传递数值列表以返回一个函数,然后您将使用列列表调用以返回类型的对象。也就是说,你必须这样称呼它:

// makeFields (numericTypes) (columns)
//    ^            ^             ^------ call that new function with column names
//    |             `---- call with list of numeric types, returns a new function
//     `-- function name

更改函数很容易,这样您就可以一次性提供所有参数。但这种表述有一个优势。您可以使用数字类型调用外部函数并返回一个可重用的函数。然后可以将该内部函数应用于您选择的任何列集。可以将其传递给 ,例如,map如果您有多组列,则可以简单地编写multipleColumns.map(makeFields(numericTypes)).

但是如果你想改变它,新版本可能看起来像这样:

const makeFields = function(numericTypes, columns) {
  return columns.reduce(function(a, s) {
    a[s] = {type: numericTypes.includes(s) ? 'numeric' : 'string'}
    return a
  }, {})
}

const numericTypes = ['Id', "IsActive"]
const columns = ["Id", "Title", "Description", "IsActive"]

console.log(makeFields(numericTypes, columns))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将mysql响应从VM转换为特定格式

来自分类Dev

如何将JSON响应从公共API转换为JSON对象?

来自分类Dev

将Pdf响应从API调用转换为Blob并生成Blob网址

来自分类Dev

将深度嵌套的 JSON 响应从 API 调用转换为 Pandas 数据帧

来自分类Dev

如何将所有响应从API返回到我的Swift应用

来自分类Dev

将响应从API写入HTML

来自分类Dev

如何将SQL查询的结果转换为具有特定格式的html表

来自分类Dev

如何将ruby哈希转换为具有特定格式的字符串

来自分类Dev

将字符串转换为具有特定格式的数组

来自分类Dev

如何将SQL查询的结果转换为具有特定格式的html表

来自分类Dev

如何将数组转换为特定格式的对象?

来自分类Dev

如何将具有多个JSON对象的Asana API响应转换为Python对象

来自分类Dev

将json响应从Web服务转换为python中的字典或对象

来自分类Dev

将datetime转换为特定格式?

来自分类Dev

将DateTime转换为特定格式

来自分类Dev

将Double转换为特定格式

来自分类Dev

如何在SQL Server 2008中将小数转换为具有特定格式的Varchar

来自分类Dev

AWS API网关+ SQS + Lambda +将响应从Lambda返回到API

来自分类Dev

AWS API网关+ SQS + Lambda +将响应从Lambda返回到API

来自分类Dev

无法将 JSON 响应从 com.sun.jersey.api.client.ClientResponse 映射到 POJO

来自分类Dev

如何将响应从Invoke-RestMethod转换为XML?

来自分类Dev

C#将十进制转换为具有指定格式的字符串

来自分类Dev

将Java中的String转换为具有指定格式的datetime

来自分类Dev

如何将文件中给定的输入值转换为具有指定格式的数组

来自分类Dev

完全将spring项目的响应从呈现jsp更改为json对象

来自分类Dev

完全将spring项目的响应从呈现jsp更改为json对象

来自分类Dev

使用Python将CSV转换为JSON(以特定格式)

来自分类Dev

将CSV数据转换为特定格式

来自分类Dev

将字符串转换为特定格式的日期

Related 相关文章

  1. 1

    将mysql响应从VM转换为特定格式

  2. 2

    如何将JSON响应从公共API转换为JSON对象?

  3. 3

    将Pdf响应从API调用转换为Blob并生成Blob网址

  4. 4

    将深度嵌套的 JSON 响应从 API 调用转换为 Pandas 数据帧

  5. 5

    如何将所有响应从API返回到我的Swift应用

  6. 6

    将响应从API写入HTML

  7. 7

    如何将SQL查询的结果转换为具有特定格式的html表

  8. 8

    如何将ruby哈希转换为具有特定格式的字符串

  9. 9

    将字符串转换为具有特定格式的数组

  10. 10

    如何将SQL查询的结果转换为具有特定格式的html表

  11. 11

    如何将数组转换为特定格式的对象?

  12. 12

    如何将具有多个JSON对象的Asana API响应转换为Python对象

  13. 13

    将json响应从Web服务转换为python中的字典或对象

  14. 14

    将datetime转换为特定格式?

  15. 15

    将DateTime转换为特定格式

  16. 16

    将Double转换为特定格式

  17. 17

    如何在SQL Server 2008中将小数转换为具有特定格式的Varchar

  18. 18

    AWS API网关+ SQS + Lambda +将响应从Lambda返回到API

  19. 19

    AWS API网关+ SQS + Lambda +将响应从Lambda返回到API

  20. 20

    无法将 JSON 响应从 com.sun.jersey.api.client.ClientResponse 映射到 POJO

  21. 21

    如何将响应从Invoke-RestMethod转换为XML?

  22. 22

    C#将十进制转换为具有指定格式的字符串

  23. 23

    将Java中的String转换为具有指定格式的datetime

  24. 24

    如何将文件中给定的输入值转换为具有指定格式的数组

  25. 25

    完全将spring项目的响应从呈现jsp更改为json对象

  26. 26

    完全将spring项目的响应从呈现jsp更改为json对象

  27. 27

    使用Python将CSV转换为JSON(以特定格式)

  28. 28

    将CSV数据转换为特定格式

  29. 29

    将字符串转换为特定格式的日期

热门标签

归档