所以我有 2 个对象数组,我想从其中获取名称值并将其分配给标签和值。这就是我正在做的事情。
let newAreas = [{ label: '', value: '' }];
let areas = [{name: 'Haram', condition: true, counter: 5}, {name: 'Nasr City', condition: false, counter: 3}, {name: 'Faisl', condition: true, counter: 7}];
我想获取每个名称并将它们分配给标签和值,所以现在我循环
areas.map(area => {
newAreas.map(val => {
val.label = area.name;
val.value = area.name;
});
});
console.log(newAreas);
但这只能让我得到最后一个值我在这里做错了什么?
最佳答案
您只想使用 map
一次,并检索返回值:
const areas = [
{name: 'Haram', condition: true, counter: 5},
{name: 'Nasr City', condition: false, counter: 3},
{name: 'Faisl', condition: true, counter: 7}
];
const newAreas = areas.map(({name}) => ({label: name, value: name}));
console.log(newAreas);
这利用了 object destructuring .
关于Javascript 2 对象数组,从一个对象数组中获取值并将其分配给另一个对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54618062/