1.情景:
//想要的數(shù)據(jù)
let arr1=[[01:1],[02:3],[03:12],[04:22]]
//接口只返回了2條數(shù)據(jù)
let arr2=[[02:33],[03:55]]
//于是,先分別做出2個對象,然后對象組合(注意有去重),后再把對象轉成數(shù)據(jù)
function objArr(res) {
let series0 = {};
res.forEach(t => {
let dataTime = new Date(t.dataTime).getDate().toString().padStart(2, '0')
series0[dataTime] = t.stopHours
});
//獲取當前月的總天數(shù),作為新建數(shù)組和對象的長度
let d = new Date(res[0].dataTime)
let year = d.getFullYear()
let month = d.getMonth() + 1
let days = new Date(year, month, 0).getDate()
let seriesObj = {}
// console.log(days);
let categoryAll = Array.from({
length: days
}, (v, k) => {
let key = (k + 1).toString().padStart(2, '0')
seriesObj[key] = 0
return (k + 1).toString().padStart(2, '0')
});
Object.assign(seriesObj, series0)
let seriesArr = []
for (const key in seriesObj) {
if (seriesObj.hasOwnProperty.call(seriesObj, key)) {
const t = seriesObj[key];
seriesArr.push([key, t])
}
}
// console.log(categoryAll,seriesArr);
}
--by Affandi ⊙▽⊙