这题真的好恶心,也不知道啥意思,反正自己在本地测试都是ok的,传入格式为:2021-06-04 20:22:00
以下为代码

function second(render) {
    var date = new Date();
    var now = date.getTime();
    var endDate = new Date(render); //设置截止时间
    var end = endDate.getTime();
    var leftTime = end - now; //时间差                              
    var d, h, m, s, ms;
    if (leftTime >= 0) {
      d = Math.floor(leftTime / 1000 / 60 / 60 / 24);
      h = Math.floor(leftTime / 1000 / 60 / 60 % 24);
      m = Math.floor(leftTime / 1000 / 60 % 60);
      s = Math.floor(leftTime / 1000 % 60);
      ms = Math.floor(leftTime % 1000);
      if (ms < 100) {
        ms = "0" + ms;
      }
      if (s < 10) {
        s = "0" + s;
      }
      if (m < 10) {
        m = "0" + m;
      }
      if (h < 10) {
        h = "0" + h;
      }
      //将倒计时赋值到div中
      let name = document.querySelectorAll('span')
      name[0].innerText = d + '天'
      name[1].innerText = h + ':'
      name[2].innerText = m + ':'
      name[3].innerText = s
      if (d == 0) {
        name[0].classList.add('hide')
      }
      if (h == 0) {
        name[1].classList.add('hide')
      }
      if (m == 0) {
        name[2].classList.add('hide')
      }
      if (s == 0) {
        name[3].classList.add('hide')
      }
    }
    //递归每秒调用countTime方法,显示动态时间效果
    return leftTime
  }

  function render(data) {
    var s = setInterval(function () {
      var dates = second(data);
      if (dates <= 0) {
        clearInterval(s)
      }
    }, 50)
  }

  render('2021-06-04 20:22:00')