我使用下划线将一些 Prop 提取到一个单独的对象中,但结构不是我想要的:
let element = {
foo: 0,
bar: 1,
baz: _.map(
_.filter(element.properties, (prop) =>
_.contains(validationProps, prop.name)), (rule) =>
({ [rule.name]: rule.value }) )
}
.. 返回 baz
的对象数组:
[ {"required":true} , {"maxLength":242} ]
..但是我需要的是:
{ "required":true, "maxLength":242 }
最佳答案
或者使用 JavaScript 的 Array.prototype.reduce()
The reduce() method executes a reducer function (that you provide) on each member of the array resulting in a single output value.
let data = [{
"name": "label",
"value": "Short 2"
},
{
"name": "required",
"value": true
},
{
"name": "maxLength",
"value": 242
}
];
let reformatted = data.reduce((pv, cv) => {
pv[cv.name] = cv.value;
return pv;
}, {});
console.log(reformatted);
关于javascript - 推送到对象而不是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53331716/