zoukankan      html  css  js  c++  java
  • js 将时间戳转成时间格式化

    一、时间戳

    时间戳是以时间元年1970年开始算起到当前时间的一个值,以秒为单位,比如1535694719秒,如何转化为我们想要的格式,yyyy/mm/dd或者yyyy-MM-dd hh:mm,格式根据自己想要的进行改。

    二、将时间戳转成Data对象

    1    function(value) {
    2       //将时间戳转成Data对象
    3       let date = new Date(value * 1000);
    4       //将data进行格式化
    5       return formatDate(date, "yyyy-MM-dd hh:mm");
    6 }

    因为时间戳是秒,data对象是毫秒,所以要*1000,调用formatDate函数

    需要引入formatDate函数

    formatDate(date, fmt) {
      // 获取年份
      if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(
          RegExp.$1,  //匹配到的结果yyyy,替换成后面的内容
          (date.getFullYear() + "").substr(4 - RegExp.$1.length) //(date.getFullYear() + "") 2019 + + "" 表示将数字转换成字符串
          //substr表示截取几位,假如传过来的是两位yy,就将2019截取4-2位成了19
        );
      }
    
      let o = {
        "M+": date.getMonth() + 1,
        "d+": date.getDate(),
        "h+": date.getHours(),
        "m+": date.getMinutes(),
        "s+": date.getSeconds()
      };
    
      for (let k in o) {
        if (new RegExp(`(${k})`).test(fmt)) {
          let str = o[k] + "";
          fmt = fmt.replace(
            RegExp.$1,
            RegExp.$1.length === 1 ? str : padLeftZero(str)
          );
        }
      }
    
      return fmt;
    }
    
    
    function padLeftZero(str) { //小时分钟秒不足两位的话用00补位,然后str.length
      //假如是04:0004 截取两位 04
      //假如是4:004 截取一位:04
      return ("00" + str).substr(str.length);
    }
    不积跬步无以至千里
  • 相关阅读:
    软工实践个人总结
    第03组 每周小结 (3/3)
    第03组 每周小结 (2/3)
    第03组 每周小结(1/3)
    第03组 Beta冲刺 总结
    第03组 Beta冲刺 (5/5)
    第03组 Beta冲刺 (4/5)
    第03组 Beta冲刺 (3/5)
    第03组 Beta冲刺 (2/5)
    第03组 Beta冲刺 (1/5)
  • 原文地址:https://www.cnblogs.com/lyt0207/p/12048240.html
Copyright © 2011-2022 走看看