首页 > 解决方案 > 如何交换数组的格式?- javascript

问题描述

这是我的 json 数据:

{
  "rows": [
    {
      "id": 3,
      "code": "airtel121",
      "position": "manager",
      "salary": "25000",
      "login": {
        "id": 4,
        "username": "sameer",
        "firstName": "Mohamed",
        "lastName": "Sameer",
        "code": "airtel121",
      }
    }
  ]
}

我的预期输出:

{
  "rows": [
    {
      "id": 4,
      "username": "sameer",
      "firstName": "Mohamed",
      "lastName": "Sameer",
      "code": "airtel121",
      "staffs": [
        {
          "id": 3,
          "code": "airtel121",
          "position": "manager",
          "salary": "25000",
        }
      ]
    },
  ]
}

我想将第一个对象交换为一个数组作为人员,我不知道什么样的库或方法可以制作这些东西,

标签: javascriptarraysjsonobject

解决方案


像这样?您可以使用 ES 2018 Object spread将您想要的属性拉入对象文字中。

let a = {
  "rows": [
    {
      "id": 3,
      "code": "airtel121",
      "position": "manager",
      "salary": "25000",
      "login": {
        "id": 4,
        "username": "sameer",
        "firstName": "Mohamed",
        "lastName": "Sameer",
        "code": "airtel121",
      }
    }
  ]
}

let b = { "rows": [{ ...a.rows[0].login, "staffs": [ { ...a.rows[0] } ] } ] }

delete(b.rows[0].staffs[0].login)

console.log(b)


推荐阅读