js时间戳转为日期年月日时分秒

在这里插入图片描述

核心代码

      class moment {
        constructor(value) {
          this.value = value;
        }
        format(type) {
          let value = this.value;
          // 参数需要毫秒数,所以这里将秒数乘于 1000
          if (value.toString().length === 10) {
            value = value * 1000;
          }
          if (type) {
            let date = new Date(parseInt(value));
            let spDate = type;
            spDate = spDate.replace(/[a-zA-Z]+/g, "").split(""); //去掉字母
            let Y = date.getFullYear();
            let M = this.addZero(date.getMonth() + 1);
            let D = this.addZero(date.getDate());
            let H = this.addZero(date.getHours());
            let m = this.addZero(date.getMinutes());
            let s = this.addZero(date.getSeconds());
            let result = "";
            if (type.indexOf("YYYY") != -1) {
              result += Y + this.charFilter(spDate[0]);
            }
            if (type.indexOf("MM") != -1) {
              result += M + this.charFilter(spDate[1]);
            }
            if (type.indexOf("DD") != -1) {
              result +=
                D + this.charFilter(spDate[2]) + (spDate[3] == " " ? " " : "");
            }
            if (type.indexOf("HH") != -1 || type.indexOf("hh") != -1) {
              result += H + this.charFilter(spDate[spDate.length - 2]);
            }
            if (type.indexOf("mm") != -1) {
              result += m + this.charFilter(spDate[spDate.length - 1]);
            }
            if (type.indexOf("ss") != -1) {
              result += s;
            }
            return result;
          } else {
            let date = new Date(parseInt(value));
            let Y = date.getFullYear();
            let M = this.addZero(date.getMonth() + 1);
            let D = this.addZero(date.getDate());
            let H = this.addZero(date.getHours());
            let m = this.addZero(date.getMinutes());
            let s = this.addZero(date.getSeconds());
            return Y + "-" + M + "-" + D + " " + H + ":" + m + ":" + s;
          }
        }
        addZero(value) {
          //补零
          if (value < 10) {
            return "0" + value;
          } else {
            return value;
          }
        }
        charFilter(value) {
          //间隔符号
          if (value) {
            return value;
          } else {
            return "";
          }
        }
      }
      // 示例一:
      let time = new moment(1652186355);
      console.log(time.format("YYYY"));
      console.log(time.format("YYYY年"));
      console.log(time.format("YYYY/MM/DD"));
      console.log(time.format("HH:mm:ss"));
      console.log(time.format("YYYY年MM月DD号HH:mm:ss"));
      console.log(time.format("YYYY年MM月DD号 HH:mm:ss"));
      console.log(time.format());

      // 2022
      // 2022年
      // 2022/05/10
      // 20:39:15
      // 2022年05月10号20:39:15
      // 2022年05月10号 20:39:15
      // 2022-05-10 20:39:15

      // 示例二:

      const momentExample = (time) => new moment(time);
      console.log(momentExample("1695211200000").format("YYYY年"));
	  //2023年

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值