graphData, в нем должно быть 24 елемента, но иногда прилетает меньше. Задача создать массив, у которого будут объекты вида [{hour: 1 (12 часовой формат), sales: с graphData если есть, если нет - 0}, {hour:2, sales:...}]. Вот текущий код
const arr = new Array(24);
graphData &&
graphData.map((data) => {
arr.push({
name: data.name > 12 ? data.name - 12 : data.name,
sales: data.sales || 0,
});
});
распарси сначала пришедший, затем возьми длину пришедшего и добавь недостающие конкатом или спредом и его уже заполни чем надо
а как мне динамически заполнить данные, без хардкода?
Рандомы какие-то городи... зависит от данных. Как пример const graphData = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]; function someFunc(data) { if (data.length < 24) { return [...data, ...new Array(24 - data.length).map(item => {тут чет делаешь})]; } else { return data; } } someFunc(graphData) В мапе уже создаешь рандом недостающие данные
Обсуждают сегодня