@alex_kulkoff

Как получить массив из другого массива?

Есть массив такого вида:
[{
  month: 2,
  sum: 10
}, {
  month: 3,
  sum: 20
},{
  month: 4,
  sum: 26
}, {
  month: 5,
  sum: 30
}, {
  month: 7,
  sum: 22
}, {
  month: 8,
  sum: 25
},]


Как получить массив из 12 значений, чтобы индекс был равен номеру месяца:
['', '10 ', '20', '26', '30', '', '22', '25', '', '', '', '']
  • Вопрос задан
  • 75 просмотров
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
arr.reduce((acc, n) => (acc[n.month - 1] = n.sum, acc), Array(12).fill(''))
Ответ написан
hzzzzl
@hzzzzl
// data = массив такого вида
Array(12).fill().map((item, index) => {
	const month = data.find(m => m.month === index + 1)
	return month ? month.sum : ''
})


ну или как-то по старинке

// data = массив такого вида
result = Array(12).fill('')

for(let i = 0; i < data.length; i++) {
	result[data[i].month - 1] = data[i].sum
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
17 сент. 2019, в 20:46
952 руб./в час
17 сент. 2019, в 20:41
10000 руб./за проект
17 сент. 2019, в 20:30
700 руб./в час