项目用到echarts,横坐标要写死,将一天24个小时每隔5分钟渲染,像这样:
本想写个死的数组,算了一下,有288个间隔,手动微笑_,想了一下,封装一个方法,每次传入参数为你要间隔的分钟,比如我是每间隔5分钟:
function timeSlot (step) { // step = 间隔的分钟
var date = new Date()
date.setHours(00) // 时分秒设置从零点开始
date.setSeconds(00)
date.setUTCMinutes(00)
// console.log(date.getHours())
// console.log(date.getSeconds())
// console.log(new Date(date.getTime()))
var arr = [], timeArr = [];
var slotNum = 24*60/step // 算出多少个间隔
for (var f = 0; f < slotNum; f++) { // stepM * f = 24H*60M
// arr.push(new Date(Number(date.getTime()) + Number(step*60*1000*f))) // 标准时间数组
var time = new Date(Number(date.getTime()) + Number(step*60*1000*f)) // 获取:零点的时间 + 每次递增的时间
var hour = '', sec = '';
time.getHours() < 10 ? hour = '0' + time.getHours() : hour = time.getHours() // 获取小时
time.getMinutes() < 10 ? sec = '0' + time.getMinutes() : sec = time.getMinutes() // 获取分钟
timeArr.push(hour + ':' + sec)
}
return timeArr
}
console.log(timeSlot(5)) // 传入参数:每间隔5分钟