Javascript - 更改每月的第一天

时间:2015-11-10 10:13:01

标签: javascript date datetime

我正在开发一个简单的自定义模块,上面写着“当前月份是:当月”,这是脚本:

<span class="b" id="monthis"> </span>
<script type="text/javascript">

var month = new Array(12);
month[0]="Януари";
month[1]="Февруари";
month[2]="Март";
month[3]="Април";
month[4]="Май";
month[5]="Юни";
month[6]="Юли";
month[7]="Август";
month[8]="Септември";
month[9]="Октомври";
month[10]="Ноември";
month[11]="Декември";

var current_date = new Date();
month_value = current_date.getMonth();
day_value = current_date.getDate();
year_value = current_date.getFullYear();
document.getElementById("monthis").innerHTML = (month[month_value] + "  " + year_value);

</script>

一切正常,月份在每个月的第一天发生变化,但我需要在当月的第3天进行更改。例如:要切换到下个月(12月),模块必须等待2天,并在第3天切换月份,例如12月必须从2015年12月3日到2016年1月2日开始,这个转变必须是每个月。

2 个答案:

答案 0 :(得分:2)

只需将-2天留到当前日期并保持相同的逻辑。

var current_date = new Date();
current_date.setDate(current_date.getDate()-2);

答案 1 :(得分:0)

一种可能的解决方案是添加条件检查day_value,然后根据需要更改月份(和年份):

if(day_value < 3){
    if(month_value - 1 < 0){
        month_value = 11;
        year_value--;
    } else {
        month_value--;
    }
}

修改:我的第一个回答并未说明年度变化。它应该在这种情况下处理。

JSFiddle Example