簡體   English   中英

如何將具有包含值、值的對象的數組轉換為只有鍵、值的單個對象?

[英]How to convert an array with objects that contain value,values to a single object with only key,values?

所以在為數據庫繪制數據后,我最終得到了類似的東西

[
{name: "id", data_type: "integer"}
{name: "name", data_type: "char"}
{name: "active", data_type: "boolean"}
]

但我想要的是:

{id: "integer" , name: "char" , active: "boolean" }

我嘗試了很多東西,但無法弄清楚,任何幫助將不勝感激

這是我絕望的嘗試:

Object.entries(jsonData).map((type) => {
        return { ...objectList, [type[1].name]: type[1].data_type };
      }).reduce((objectList, object) => (
          ...objectList,
          object)
        )

這是一個簡單的方法:

 let arr = [ {name: "id", data_type: "integer"}, {name: "name", data_type: "char"}, {name: "active", data_type: "boolean"} ]; let map = {}; arr.forEach(e => map[e.name]=e.data_type); console.log(map);

如果你想使用.reduce ,試試這個:

 let arr = [ {name: "id", data_type: "integer"}, {name: "name", data_type: "char"}, {name: "active", data_type: "boolean"} ]; let map = arr.reduce(function(obj,item){ obj[item.name] = item.data_type; return obj; }, {}); console.log(map);

這是一個減少

 const data = [ {name: "id", data_type: "integer"}, {name: "name", data_type: "char"}, {name: "active", data_type: "boolean"} ]; const arrayToObject = arr => arr.reduce((result, value) => { result[value.name] = value.data_type; return result; }, {}); console.log(arrayToObject(data));

另一種方法是使用Array.reduce()

const array = [
  { name: 'id', data_type: 'integer' },
  { name: 'name', data_type: 'char' },
  { name: 'active', data_type: 'boolean' },
];

const newObject = array.reduce((finalObj, obj) => {
  finalObj[obj.name] = obj.data_type;
  return finalObj;
}, {})

console.log(newObject)

暫無
暫無

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

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