JS处理日期时间

1.js获取当前日期时间

function Thistime() { //当前日期
      var date = new Date();
      var year = date.getFullYear();
      var month = date.getMonth() + 1;
      var day = date.getDate();
      var mytime=date.toLocaleTimeString();     //获取当前时间
      // myDate.toLocaleString( );
      var time = year + "-" + month + "-" + day+' '+mytime;
      return time;
    }

控制台打印

console.log(Thistime())

在这里插入图片描述

2.JS获取昨天的日期

    timeDefault() {
      var date = new Date();
      var month = date.getMonth() + 1;
      const newmonth = month >= 10 ? month : "0" + month;
      var s1 = date.getFullYear() + "-" + newmonth + "-" + (date.getDate() - 1);
      return s1;
    }

控制台打印

console.log(this.timeDefault);

结果:2022-04-12

3.JS获取一个月前的日期

 //获取当前年月日时分秒
   function getDate() {
      const nowDate = new Date();
      var y = nowDate.getFullYear();
      var m = nowDate.getMonth() + 1;
      var d = nowDate.getDate();
      //  当前日期
      let nowDates =
        y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d);
      //   一月的时候年份要减一
      if (m == 1) {
        y--;
        m = 12;
      } else if (m == 3 && d > 28) {
        //三月要考虑是否为闰年
        m--;
        if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
          d = 29;
        } else {
          d - 28;
        }
      } else if ((m != 12 || m != 8) && d == 31) {
        //31号的月份要考虑上个月是否有31号
        m--;
        d = 30;
      } else {
        m--;
      }
      // 一个月前的日期
      this.timeOne =
        y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d);
    }

3.JS处理日期时间补0

js日期需要yyyy-mm-dd的时候只显示yyyy-m-d,需要前面补充0,之前都是用的判断,感觉非常low。刚刚看到一个方法padStart用了用还不错,padStart是为数值补全指定位数,对应的还有endStart。

var d = new Date();
var ye = d.getFullYear();
var mo = (d.getMonth()+1).toString().padStart(2,'0');
var da = d.getDate().toString().padStart(2,'0');
var time = ye+'-'+mo+'-'+da;
alert(time);

结果:2019-01-09

猜你喜欢

转载自blog.csdn.net/qq_41842461/article/details/126305166