У меня есть массив данных, но я хочу преобразовать его в объект
как превратить массив данных в такой объект?
[
{
date: "2018-01-31",
icp: "65.59",
slc: "65.83",
dc: "64.55"
},
{
date: "2018-02-28",
icp: "61.61",
slc: "62.31",
dc: "59.93"
},
{
...
}
]
пожалуйста, помогите мне решить эту проблему
совет: в циклах for не обязательно использовать i++
, вы также можете использовать i = i + 4
.
Попробуйте один раз со следующим кодом:
const arr = [
"2018-01-31",
"65.56",
"65.83",
"64.55",
"2018-02-28",
"61.61",
"62.31",
"59.93",
"2018-03-31",
"61.87",
"62.85",
"60.26",
"2018-04-30",
"67.43",
"68.39",
"65.86",
];
const result = [];
for (let i = 0; i < arr.length; i += 4) {
const date = arr[i];
const icp = arr[i + 1];
const slc = arr[i + 2];
const dc = arr[i + 3];
result.push({ date, icp, slc, dc });
}
console.info(result);
спасибо, я попробовал это, и это сработало
Просто используйте forEach
и выполните логику switch
следующим образом:
const arr = ['2018-01-31','65.59','65.83','64.55','2018-02-28','61.61','62.31','59.93'];
let newArr = [];
let obj;
arr.forEach((data, index)=>{
switch(index % 4) {
case 0:
obj = {date: data};
break;
case 1:
obj.icp = data;
break;
case 2:
obj.slc = data;
break;
default:
obj.dc = data;
newArr.push(obj);
}
});
console.info(newArr);
спасибо, я попробовал это, и это сработало
Пожалуйста. Пожалуйста, нажмите кнопку check
, если вы согласны с этим.
массив цикла, пропуская 4