javascript - 将对象数组转换为lodash中的单个对象数组

标签 javascript jquery arrays lodash

我有一个对象数组,如下所示,它由 _.filter lodash 函数生成,该函数返回匹配值的 objects:

const matchedPositions = _.filter(allPositions, function(o) {
return o.company.toLowerCase() === value.toLowerCase();
});//matchedPositions have array of objects
let allCheckboxFiltered = [...allCheckboxFiltered, matchedPositions]; //allCheckboxFiltered  have below results

   [
    [{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
    {serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"}],
    [{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
    {serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
    {serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"}]
    ];

我想要如下预期结果;

[
{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"},
{serialNo: 9, sector: null, company: "AMERICAN LIFE INSURANCE COMPANY", location: null, position: "INSURANCE Operations  MANAGER"}
];

我已经尝试使用 reduce 函数来生成如下预期结果:

let result = temp1.reduce(function(res, obj) {
console.log(res, obj);
Object.keys(obj).forEach(function(k) {
res[k] = res[k] || [];
res[k] = res[k].concat(obj[k]);
});
return res;
}, []);

上面的代码没有生成我想要的结果。我尝试过其他东西,例如lodash 也能正常工作,但都是徒劳的。

谢谢

最佳答案

为什么不直接使用 lodash flatten https://lodash.com/docs/4.17.4#flatten

关于javascript - 将对象数组转换为lodash中的单个对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47712480/

相关文章:

javascript - 如何计算非重复数组中重复字段的数量?

javascript - 当值未定义时如何捕获Json数据错误?

c++ - 在 C++ 中初始化数组

python - 向量化 numpy 运算

c - 从C中的字符串中获取子字符串

javascript - 如何在Node.js中输出特定对象但不输出那些不存在的对象?

javascript - 如何使用 rails 和 jquery 组织 javascript

jquery - 将项目添加到jquery中的列表

jquery - 如何选择仅与特定类关联的 HTML 元素

jQuery Ajax POST 不成功