如何将Map转换为对象数组?

时间:2019-06-27 17:03:56

标签: javascript arrays

我正在尝试将Map转换为对象数组

假设我有以下地图:

let myMap = new Map().set('a', 1).set('b', 2);

我想将上面的地图转换为以下内容:

[
   {
      "name": "a",
      "value": "1",
   },
   {
      "name": "b",
      "value": "2",
   }
]

3 个答案:

答案 0 :(得分:4)

您可以使用Array.from并映射键/值对。

let map = new Map().set('a', 1).set('b', 2),
    array = Array.from(map, ([name, value]) => ({ name, value }));

console.log(array);

答案 1 :(得分:1)

使用Spread syntaxArray.map()

bundle:

答案 2 :(得分:0)

像这样传播ES6:

let myMap = new Map().set('a', 1).set('b', 2);

const  result = Array.from(myMap).map(([name, value]) => ({name, value}))

console.log(result);