如何将对象数组和对象数组转换为对象数组

时间:2017-06-30 06:47:25

标签: javascript arrays typescript javascript-objects

我有一个对象数组和对象数组

const a = [[{'k': 'b'}, {'a1': 'c1'}], {'a': 'c'}];

我想要的只是对象数组,比如

const a = [{'k': 'b'}, {'a1': 'c1'}, {'a': 'c'}];  

我试图整理a的元素,它们是数组(本例中为0元素)并分别拉出对象

const a_arr = [];

for (let i = 0; i < a.length; i++) {
 for(let j = 0; j < a[i].length; j++) {
 a_arr.push(a[i][j]);
 }
}

它工作正常,但我不知道我的第二步应该是什么? 我需要从数组中取出对象(在本例中是[1])然后连接到对象数组,但是我怎么能实现这个呢?

或者,也许有更好的方法可以做到这一切?

1 个答案:

答案 0 :(得分:2)

使用Array#reduce 使用Array#concat和concat元素

&#13;
&#13;
const a = [
  [{
    'k': 'b'
  }, {
    'a1': 'c1'
  }], {
    'a': 'c'
  }
];

console.log(a.reduce((initial, elem) => initial.concat(elem), []));
&#13;
&#13;
&#13;