<!DOCTYPE html>
<html>
<body>
  <h2>
    JavaScript函数
  </h2>
  <p>
    本例调用了一个执行计算的函数,然后返回结果:
  </p>
  <p id="demo"></p>
  <script>
    function getWeek(dt) {
      // 默认当前时间
      var d = dt ? new Date(dt) : new Date();
      var day = d.getDay();
      var originDate = d.getFullYear() + '/' + "01" + '/' + "01" + ' 00:00:00';
      var nowDate = d.getFullYear() + '/' + ((d.getMonth() + 1) > 9 ? (d.getMonth() + 1) : '0' + (d.getMonth() + 1)) + "/" + (d.getDate() > 9 ? d.getDate() : '0' + d.getDate()) + ' 00:00:00';
      var nowStrapTime = (new Date(nowDate)).getTime();
      var originStrapTime = (new Date(originDate)).getTime();
      var originDay = ((new Date(originStrapTime)).getDay()) == 0 ? 7 : ((new Date(originStrapTime)).getDay());
      var nowDay = d.getDay() == 0 ? 7 : d.getDay();
      var weeks = 0;
      var resultStrap = 0;
      if (nowDay > originDay) {
        resultStrap = nowStrapTime - (nowDay - originDay) * 1000 * 3600 * 24 - originStrapTime;
        if (resultStrap > 0) {
          weeks = (resultStrap / (3600 * 1000 * 24 * 7)) + 1
        } else {
          weeks = 1
        }
      } else {
        resultStrap = nowStrapTime + (originDay - nowDay) * 1000 * 3600 * 24 - originStrapTime;
        weeks = (resultStrap / (3600 * 1000 * 24 * 7)) + 1
      }
      return weeks
    }
    document.getElementById("demo").innerHTML = getWeek();//当前时间
    //document.getElementById("demo").innerHTML = getWeek('2021-12-31');//指定日期
  </script>
</body>
</html>