簡體   English   中英

將JSON中的數組轉換為javascript中的對象

[英]Convert array inside JSON into object in javascript

我有以下來自GraphQL 端點的數據

{
  "data": {
    "metatags": [
      {
        "title": "Metatag title",
        "description": "Metatag description"
      }
    ],
    "herounits": [
      {
        "title": "Hero unit title",
        "description": "Hero unit description"
      }
    ]
  }
}

我需要將其中的數組替換為 JSON 對象,如下所示:

{
  "data": {
    "metatags": {
      {
        "title": "Metatag title",
        "description": "Metatag description"
      }
    },
    "herounits": {
      {
        "title": "Hero unit title",
        "description": "Hero unit description"
      }
    }
  }
}

一直在嘗試不同的方法,但都沒有奏效。

您想要的對象無效,您有一個沒有屬性名稱的額外對象嵌套級別。

假設你真正想要的是:

{
  "data": {
    "metatags": {
        "title": "Metatag title",
        "description": "Metatag description"
    },
    "herounits": {
        "title": "Hero unit title",
        "description": "Hero unit description"
    }
  }
}

您可以通過將每個屬性替換為數組元素0中的值來實現。

 let obj = { "data": { "metatags": [ { "title": "Metatag title", "description": "Metatag description" } ], "herounits": [ { "title": "Hero unit title", "description": "Hero unit description" } ] } }; Object.keys(obj.data).forEach(k => obj.data[k] = obj.data[k][0]); console.log(obj);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM