Javascript 2 массива объектов, получить значение из одного массива объектов и присвоить его другому массиву объектов - PullRequest
0 голосов
/ 10 февраля 2019

Итак, у меня есть 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);

, но это только возвращает мне последнее значение, что я здесь делаю неправильно

1 Ответ

0 голосов
/ 10 февраля 2019

Вы хотите использовать 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);

Используется разрушение объекта .

...