时间戳(time)转换为格式化的日期时间

 首先使用 new Date(time) 创建一个包含给定时间戳的 Date 对象。然后,通过 getXXX() 方法获取年、月、日、时、分、秒等时间组成部分的数值。接下来,通过判断这些数值是否小于 10,如果小于 10,则在前面添加一个 '0',以保证时间组成部分都是两位数。最后,将这些时间组成部分拼接起来,并以指定的格式返回日期时间字符串。

注:上述代码中使用的 time 是一个时间戳(毫秒数),表示从 1970 年 1 月 1 日午夜(UTC)开始计算的时间间隔。如果 time 不是一个有效的时间戳,那么 new Date(time) 的行为将是不确定的。

/**
   *
   *时间转化 2023-5-31 00:00:00
   * @return {*}
   */
  const newDate = (time) => {
    var date = new Date(time);  // 使用给定的时间戳创建一个 Date 对象
    var y = date.getFullYear();  // 获取年份
    var m = date.getMonth() + 1;  // 获取月份(注意月份从0开始,所以需要加1)
    m = m < 10 ? '0' + m : m;  // 将月份补齐成两位数
    var d = date.getDate();  // 获取日期
    d = d < 10 ? '0' + d : d;  // 将日期补齐成两位数
    var h = date.getHours();  // 获取小时
    h = h < 10 ? '0' + h : h;  // 将小时补齐成两位数
    var minute = date.getMinutes();  // 获取分钟
    minute = minute < 10 ? '0' + minute : minute;  // 将分钟补齐成两位数
    var s = date.getSeconds();  // 获取秒数
    s = s < 10 ? '0' + s : s;  // 将秒数补齐成两位数
    return y + '-' + m + '-' + d + ' ' + h + ':' + minute + ':' + s;  // 返回格式化的日期时间
  }

new Date().toLocaleDateString() :用于获取当前日期的本地格式字符串,例如:"2023/8/15" 或 "8/15/2023"。 

对于开始时间,直接使用 new Date(new Date().toLocaleDateString()) 将当前日期的零点作为开始时间。而对于结束时间,先使用 new Date(new Date().toLocaleDateString()).getTime() 获取当前日期的时间戳(毫秒数),然后加上 24 小时的总毫秒数(24 * 60 * 60 * 1000)来得到明天的时间戳,再减去 1 毫秒,以获取今天的23:59:59作为结束时间。

"startTime": newDate(new Date(new Date().toLocaleDateString())),//开始时间
"endTime": newDate(new Date(new Date().toLocaleDateString()).getTime() + 24 * 60 * 60 * 1000 - 1)//结束时间

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值