美文网首页
node筛选24小时前的时间戳并且排序

node筛选24小时前的时间戳并且排序

作者: Rogi | 来源:发表于2020-07-20 23:50 被阅读0次

    最近在做监控前端的报错信息,收集小程序、公众号、app、管理后台的报错信息,统一上传到报错平台
    其中以管理人员打开平台的时间为最新的数据获取后24小时的报错信息
    例:
    打开时间为09:25则获取
    10:25-09:25
    09:25-08:25
    08:25-07:25
    07:25-06:25
    06:25-06:25~~~~

    然后使用echarts来渲染数据

    // 引入dayjs
    const dayjs = require('dayjs')
    // 24小时时间戳
    const date = []
    // x轴坐标
    const xAxisData = []
    // y轴数据
    const yAxisData = []
    // 模拟数据
    const demolist = [1595236542, 1595256542]
    for (var i = 0;i<24;i++) {
      const tdate = i === 0 ? dayjs().add(1, 'hour') : dayjs().subtract(i - 1, 'hour')
      const zdate = dayjs().subtract(i, 'hour')
      date.push({
        t: tdate.unix(),
        z: zdate.unix()
      })
      xAxisData.push(`${addZero(tdate.hour())}:${addZero(tdate.minute())}-${addZero(zdate.hour())}:${addZero(zdate.minute())}`)
    }
    date.forEach(el => {
      var dataItem = demolist.filter(item => el.t >= item && el.z <= item) || []
      if (dataItem.length !== 0) {
        yAxisData.push(dataItem.length)
      } else {
        yAxisData.push(0)
      }
    })
    function addZero(nub) {
      return nub < 10 ? '0' + nub : nub
    }
    console.log(xAxisData)
    console.log(yAxisData)
    
    最终得到的数据

    相关文章

      网友评论

          本文标题:node筛选24小时前的时间戳并且排序

          本文链接:https://www.haomeiwen.com/subject/enkpkktx.html