js 时间计算(加减天数、返回日期字符串)

发布时间:2020-06-05编辑:脚本学堂
分享一例js日期计算、日期加减与天数计算的代码,返回日期字符串,有需要的朋友参考下。

js 中时间的处理没php中那么随意。

功能:传进‘yyyy-mm-dd’日期,计算后返回加减天数(这里是7天)后的 ‘yyyy-mm-dd’ 日期。

当然,根据需要可以更改传进和返回的值。
 

复制代码 代码示例:

<script type="text/javascript">
//返回7天前后的时间,格式 ‘yyyy-mm-dd’
function date2str(yy, mm, dd, prenext) {
    var s, d, t, t2;
    t = Date.UTC(yy, mm, dd);
    t2 = 7 * 1000 * 3600 * 24; //加减7天的时间
    if (prenext == 'pre') {
        t-= t2;
    } else {
        t+= t2;
    }
    d = new Date(t);

    s = d.getUTCFullYear() + "-";
    s += ("00"+(d.getUTCMonth()+1)).slice(-2) + "-";
    s += ("00"+d.getUTCDate()).slice(-2);

    alert(s);
}

function str2date(str, prenext){  
  var   dd, mm, yy;  
  var   reg = /^(d{4})-(d{1,2})-(d{1,2})$/;
  if (arr = str.match(reg)) {
    yy = Number(arr[1]);
    mm = Number(arr[2])-1;
    dd = Number(arr[3]);
  } else {
    var d = new Date();
    yy = d.getUTCFullYear();
    mm = ("00"+(d.getUTCMonth())).slice(-2);
    dd = ("00"+d.getUTCDate()).slice(-2);
  }
 if (prenext == null || (prenext != 'pre' && prenext != 'next')) {
    var prenext = 'pre';
  }

  date2str(yy, mm, dd, prenext);

str2date('2008-12-29', 'next');
</script>