Javascript获取最近若干个月

整理:

如果需要获取最近若干个月,牵扯到跨年的话,该怎么实现的问题,抽了点时间,代码如下:

    /**纪元时间获取最近12个月
     *
     * @num 传入获取月的数目
     **/
    (function getMonth(num) {
        var _curDate = new Date(),
            _curTime = _curDate.getTime(), //当前纪元时间
            _oneDayTime = 24 * 3600 * 1000, //一天的总毫秒数
            _thisMonSumDay = new Date(_curDate.getFullYear(), _curDate.getMonth() + 1, 0).getDate(); //当前月份总天数
        var _resultArr = [];
        for (var i = 1, j = _curTime; i <= num; i++, j -= _thisMonSumDay * _oneDayTime) {
            //月迭代
            if (_resultArr.length >= num) {
                break;
            }
            //当月里的时间点,作为当月依据
            var _thisMonth = new Date(j);
            //重新赋值当前月天数
            _thisMonSumDay = new Date(_thisMonth.getFullYear(), _thisMonth.getMonth() + 1, 0).getDate();
            _resultArr.push(DateFormat("yyyy-MM", new Date(j)));
        }
        return _resultArr;
    })(38);

欢迎各种拍砖

posted @ 2015-11-10 17:44  嘿煤贵  阅读(229)  评论(0编辑  收藏  举报