跳转至

格式转换为antd中table使用

问题:用js写法把下面a的对象数据结构转换成b的数组结构,es6写法也行

var a = {
    "taskName": "新组件计算",
    "taskType": "计算",
    "status": "Created",
    "isReview": "需要编辑",
    "program": null,
    "isDelete": false,
    "calculateStatus": "",
    "isAssistantEditor": null,
    "editorName": "编辑人",
    "verifierName": "校核人",
    "assistantEditorName": "助理编辑人rogram",
};

var b = [
    {
        title: "任务名称",
        content: "新组件计算",
    },
    {
        title: "任务类型",
        content: "计算"
    },
    {
        title: "任务状态",
        content: "Created"
    },
    {
        title: "是否编审",
        content: '需要编辑'
    },
    {
        title: "校算工程师",
        content: "编辑人"
    },
    {
        title: "校核工程师",
        content: "校核人"
    },
    {
        title: "计算工程师",
        content: "助理编辑人"
    },

]

解答:

var a = {
  "taskName": "新组件计算",
  "taskType": "计算",
  "status": "Created",
  "isReview": "需要编辑",
  "program": null,
  "isDelete": false,
  "calculateStatus": "",
  "isAssistantEditor": null,
  "editorName": "编辑人",
  "verifierName": "校核人",
  "assistantEditorName": "助理编辑人",
};

// 定义一个映射关系,用于将对象的key转换为对应的标题
const titleMap = {
  taskName: "任务名称",
  taskType: "任务类型",
  status: "任务状态",
  isReview: "是否编审",
  editorName: "校算工程师",
  verifierName: "校核工程师",
  assistantEditorName: "计算工程师"
};

var b = Object.keys(a) // 获取对象的所有键
  .filter(key => titleMap[key] !== undefined) // 过滤出在titleMap中定义了映射关系的键
  .map(key => ({ title: titleMap[key], content: a[key] })); // 映射为所需的数组格式

console.log(b);