Javascript:将对象的对象转换为对象数组

may*_*fly 2 javascript arrays node.js polymer firebase-realtime-database

我正在使用Polymer 1.0进行项目,我想dom-repeat用来列出F​​irebase 3.0中的数据.

在Firebase中,我有一个像这样的对象:

var objectofobjects = {
    "-KR1cJhKzg9uPKAplLKd" : {
        "author" : "John J",
        "body" : "vfdvd",
        "time" : "September 6th 2016, 8:11",
        "title" : "vfvfd"
    },
    "-KR1cLZnewbvo45fDnEf" : {
        "author" : "JJ",
        "body" : "vfdvdvf",
        "time" : "September 6th 2016, 8:11",
        "title" : "vfvfdvfdv"
    }
};
Run Code Online (Sandbox Code Playgroud)

我想将它转换为这样的对象数组:

var arrayofobjects = [ { '-KR1cJhKzg9uPKAplLKd': 
 { author: 'John J',
   body: 'vfdvd',
   time: 'September 6th 2016, 8:11',
   title: 'vfvfd' },
'-KR1cLZnewbvo45fDnEf': 
 { author: 'JJ',
   body: 'vfdvdvf',
   time: 'September 6th 2016, 8:11',
   title: 'vfvfdvfdv' } } ];
Run Code Online (Sandbox Code Playgroud)

小智 5

我用它来转换我的

let arrayOfObjects = Object.keys(ObjectOfObjects).map(key => {
   let ar = ObjectOfObjects[key]

   // Apppend key if one exists (optional)
   ar.key = key

   return ar
})
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您的输出将是

[
  {
    "author" : "John J",
    "body" : "vfdvd",
    "time" : "September 6th 2016, 8:11",
    "title" : "vfvfd",
    "key": "-KR1cJhKzg9uPKAplLKd"
  },
  {
    "author" : "JJ",
    "body" : "vfdvdvf",
    "time" : "September 6th 2016, 8:11",
    "title" : "vfvfdvfdv",
    "key": "KR1cLZnewbvo45fDnEf"
   }
 ]
Run Code Online (Sandbox Code Playgroud)