加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.52kongjun.com/)- 自然语言处理、云硬盘、数据治理、数据工坊、存储容灾!
当前位置: 首页 > 教程 > 正文

javascript转时间格式的方法有几种

发布时间:2023-10-12 12:30:54 所属栏目:教程 来源:转载
导读:   这篇文章主要介绍了javascript转时间格式的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript转时间格式的方法有哪些文章都会有所收
  这篇文章主要介绍了javascript转时间格式的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript转时间格式的方法有哪些文章都会有所收获,下面我们一起来看看吧。
 
  一、时间戳转日期
 
  时间戳是指自1970年1月1日00:00:00以来的秒数,JavaScript提供了将时间戳转成日期的方法。代码如下:
 
  var timestamp = 1617223881; // 时间戳
 
  var date = new Date(timestamp * 1000); // 时间戳转日期,注意要乘以1000
 
  console.log(date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds());
 
  以上代码中,先定义了一个时间戳变量,然后使用new Date()方法将时间戳转成日期对象。注意,由于JavaScript中的时间戳是以毫秒计算的,而Unix时间戳是以秒计算的,因此需要将时间戳乘以1000。
 
  二、日期转时间戳
 
  如果需要将日期转成时间戳,JavaScript也提供了相应的方法。代码如下:
 
  var date = new Date('2021-04-01 12:34:56');
 
  var timestamp = date.getTime() / 1000;
 
  console.log(timestamp);
 
  以上代码中,先定义了一个日期对象,然后使用getTime()方法获取该日期对象的毫秒数,最后将毫秒数除以1000得到时间戳。需要注意的是,getTime()方法返回的是毫秒数,因此在转换成时间戳时需要除以1000。
 
  三、日期格式化
 
  如果需要将日期格式化成指定的格式,JavaScript也提供了相应的方法。例如,需要将日期格式化成yyyy-MM-dd HH:mm:ss的格式,代码如下:
 
  var date = new Date('2021-04-01 12:34:56');
 
  function format(date, fmt) {
 
    var o = {
 
      'M+': date.getMonth() + 1,
 
      'd+': date.getDate(),
 
      'H+': date.getHours(),
 
      'm+': date.getMinutes(),
 
      's+': date.getSeconds(),
 
      'q+': Math.floor((date.getMonth() + 3) / 3),
 
      'S': date.getMilliseconds()
 
    };
 
    if (/(y+)/.test(fmt)) {
 
      fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
 
    }
 
    for (var k in o) {
 
      if (new RegExp('(' + k + ')').test(fmt)) {
 
        fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));
 
      }
 
    }
 
    return fmt;
 
  }
 
  console.log(format(date, 'yyyy-MM-dd HH:mm:ss'));
 
  以上代码中,定义了一个format()函数,该函数接受两个参数:待格式化的日期对象和目标格式。在函数体内,使用正则表达式匹配目标格式中的年、月、日、时、分、秒、季度和毫秒,并将其替换为对应的值。需要注意的是,在替换年时,应该截取年份的后四位数,以避免发生溢出错误。
 

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章