js获取某一天的零点时刻和某天的23:59

在使用el-date-picker组件时,选择的开始时间和结束时间保存在form对象中,代码如下:

    return {
      form: {
        date: '' // 日期
      },
    }
  },

需求: 后端要求开始时间和结束时间的传参规则为:
开始时间: 任意选择某一天;
结束时间: 为开始选择的某一天到选择该天的23:59
获取选择该天的零点和23:59 进行运算做出判断即可。

	  let startTimes = this.form.date[0] // 开始时间
      let startStamp = Date.parse(startTimes) // 开始时间时间戳
      let endTimes = this.form.date[1] // 结束时间
      let endStamp = Date.parse(endTimes) // 结束时间时间戳
      // 获取零点时刻
      function formatTime(timestamp) {
        let time = new Date(timestamp)
        let stTime = timestamp - time.getHours() * 60 * 60 * 1000 - time.getMinutes() * 60 * 1000 - time.getSeconds() * 1000 - time.getMilliseconds()
        return stTime
      }
      let start = formatTime(endStamp) // 当天零点
      let end = start - 0 + 24 * 60 * 60 * 1000 - 1 // 当天的23:59
      // var endSecond = end + 86400000 // 结束时间加24小时毫秒数
      // var intEndStamp = Number(endStamp)
      // var intEnd = Number(end)
      // var intEndSecond = Number(endSecond)

      // new Date()可以是任意一天的时间戳
      let date = new Date(end)
      let Y = date.getFullYear() + '-'
      let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
      let D = date.getDate() + ' '
      let h = date.getHours() + ':'
      let m = date.getMinutes()
      let timeData = Y + M + D + h + m

代码详解:

  1. Date.parse(time): 将某个时间点转化为13位时间戳
  2. 某个将时间戳转化为年月日时分秒格式(可粘贴直接复用,切记更改传入的时间戳 new Date(end))
 	  let date = new Date(end)
      let Y = date.getFullYear() + '-'
      let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
      let D = date.getDate() + ' '
      let h = date.getHours() + ':'
      let m = date.getMinutes() + ':'
      let s = date.getSeconds()
      let timeData = Y + M + D + h + m + s
      console.log('时间', timeData)
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值