论坛首页 Web前端技术论坛

扩展了日期对象的静态方法,用来计算日期的加减,望大家指点

浏览 1976 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-18  
这是用了prototype.js所以需要导入
<script src='prototype.js'></script>
<script language="javascript" type="text/javascript">
    Object.extend(Date,{
        pattern : '-',
        culDate : function (date,num,opt,pattern){
            this.pattern = pattern==undefined ? this.pattern : pattern;
            var _dateArr = date.split(this.pattern);
            var _million = num * 24 * 60 * 60 * 1000;
            var _tmp = new Date(_dateArr[0],_dateArr[1]-1,_dateArr[2]).getTime();
            var _resultDate = new Date(eval(_tmp+opt+_million));
            var _month = eval(_resultDate.getMonth()+1)<10? '0'+eval(_resultDate.getMonth()+1) :  eval(_resultDate.getMonth()+1)
            var _date = _resultDate.getDate()<10 ? '0'+_resultDate.getDate() : _resultDate.getDate();
            return _resultDate.getFullYear()+this.pattern+_month+this.pattern+_date;
        }
        
    })
     alert(Date.culDate('1997-03-30',5,'-'));//-->1997-03-25
     alert(Date.culDate('1997/03/30',5,'+','/'));//-->1997/04/04
</script>

希望大家指出不足,或者提出更好方法,我自己也觉得写的有点罗唆,我想用增则表达式会简化很多,但不太会.
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics