js根据当前月取得历史或未来月份集合

来源:互联网 发布:js结果放入html 编辑:程序博客网 时间:2024/05/22 10:15

从当前月开始,取历史月时,计算因子为12,每取一次减1,判断为0时,把年份减1,月份还原到12,再推后推;

从当前月开始,取未来月时,计算因子为12,每取一次加1,判断为13时,把年份加1,月份还原到12,再往前推。


<script type="text/javascript">//根据当前月,取得历史月份集合(从当前月前推:历史)            function complementHistoryDate(numMonth) {                var complDate = [];                var curDate = new Date();                var y = curDate.getFullYear();                var m = curDate.getMonth() + 1;                //第一次装入当前月(格式yyyy-mm)                complDate[0] = y + "-" + (m.toString().length == 1 ? "0" + m : m);                m--;                //第一次已经装入,numMonth少计算一次                for (var i = 1; i < numMonth; i++, m--) {                    if (m == 0) {                        //到1月后,后推一年                        y--;                        m = 12; //再从12月往后推                    }                    complDate[i] = y + "-" + (m.toString().length == 1 ? "0" + m : m);                }                return complDate;            }            //根据当前月,取得未来月份集合(从当前月后推:未来)            function complementFutureDate(numMonth) {                var complDate = [];                var curDate = new Date();                var y = curDate.getFullYear();                var m = curDate.getMonth() + 1;                //第一次装入当前月(格式yyyy-mm)                complDate[0] = y + "-" + (m.toString().length == 1 ? "0" + m : m);                m++;                //第一次已经装入,numMonth少计算一次                for (var i = 1; i < numMonth; i++, m++) {                    if (m == 13) {                        //到12月后,前推一年                        y++;                        m = 1; //再从1月往前推                    }                    complDate[i] = y + "-" + (m.toString().length == 1 ? "0" + m : m);                }                return complDate;            }</script>


原创粉丝点击