js如何获取今日开始时间戳和结束时间戳

js如何获取今日开始时间戳和结束时间戳

阅读 6k
5 个回答

Date.now() 得到的是当前时间距离 1970-01-01 00:00:00 UTC 的毫秒数。

每天的时长是固定的,60 60 24 * 1000,用这个值去除前面的毫秒数,向下取整,得到的就是天数。乘回每天的毫秒数,得到的就是今天的开始时间戳;加一天的毫秒数 -1,就是结束时间戳。

不要忘了我们在东8区,要加 8 个小时。

image.png
代码如下

var  nowDate = new Date()


var  startDate = new Date(`${nowDate.getFullYear()}-${nowDate.getMonth() + 1}-${nowDate.getDate()} 00:00:00`)

// 开始时间的时间戳
console.log(startDate.getTime())

var  endDate = new Date(`${nowDate.getFullYear()}-${nowDate.getMonth() + 1}-${nowDate.getDate()} 23:59:59`)

// 结束时间的时间戳
console.log(endDate.getTime())

开始时间(大于等于)

new Date().setHours(0, 0, 0, 0);

结束时间(小于)

new Date().setHours(24, 0, 0, 0);

有现成的 轮子

import dayjs from 'dayjs'
const today = dayjs()
const startOfDay = today.startOf('day')
const endOfDay = today.endOf('day')
console.log('%s - %s', startOfDay, endOfDay)
const todayStartTimestamp = new Date(new Date().toLocaleDateString('zh-CN')).getTime()
const todayEndTimestamp = todayStartTimestamp + 24*60*60*1000 - 1 // 减1和减999都一样,一般只精确到秒
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏