как конвертировать 2d массив в объекты - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть такие объекты массива:

[
 {
 "abc": [
  {
    "abc def": [
      "sdf/sdf",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   }
  ]
 },
 "bcd": [
  {
    "as df": [
      "fd/f",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   }
  ]
 },
 "fd": [
  {
    "fdf ff": [
      "sdf/sdf",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   }
  ]
 }
]

Проще говоря, это массив объектов, где объекты будут находиться внутри массива и станут индексом массива.но я хочу убрать массив, чтобы он стал чистым списком объектов.поэтому я хочу преобразовать его в нечто вроде этого

 {
  "abc":
  {
    "abc def": [
      "sdf/sdf",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   },
  "bcd":
  {
    "abc def": [
      "sdf/sdf",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   },
  "fd":
  {
    "abc def": [
      "sdf/sdf",
      "qwe/er",
      "kjf/er",
      "0/1",
      "df/ff",
      "kkf/iei",
     ]
   }
  }

Я пытался использовать flatmap, но он не работает.Может кто-нибудь помочь мне, как это сделать.ответ приветствуется.большое спасибо

1 Ответ

0 голосов
/ 27 ноября 2018

Это может работать:

const a = [{"abc": [{"abc def": ["sdf/sdf", "qwe/er", "kjf/er", "0/1", "df/ff", "kkf/iei"] } ] }];    
a.reduce((obj, item) => { const key = Object.keys(item)[0]; const first_value = item[key][0]; return {[key]: first_value}}, {})
...