日期总是比所需日期少一个

时间:2016-06-01 09:00:19

标签: javascript datetime datepicker

我有一个像

这样的javascript日期对象
yy-mm-dd

我使用以下代码获取 var month = $scope.dt.getUTCMonth() + 1; //months from 1-12 var day = $scope.dt.getUTCDate(); var year = $scope.dt.getUTCFullYear(); $scope.date_in_format=year + "-" + month + "-" + day; 格式

var day = $scope.dt.getUTCDate()+1;

但是日期变量日总是比实际日期少1个。在这种情况下,天= 19.如何解决?当我修改为

var SomeNamespace = {};
SomeNamespace.myApp = angular.module("ngApName",[]);

当实际日期为1天变量变为31 + 1 = 32

时,它不起作用

1 个答案:

答案 0 :(得分:1)

这是因为getUTCDate会从Jun 20 2016 00:00:00减去5小时30分钟,而前一天你会得到。请改为getDate()

在此处查看不同之处:

function myFunction() {
    var d = new Date(2016, 06, 20, 0, 0, 0);
    var n1 = d.getDate();
    var n2 = d.getUTCDate();
    document.getElementById("demo1").innerHTML = n1;
    document.getElementById("demo2").innerHTML = n2;

}
<p>Click the button to display the day of the month, according to UTC.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo1"></p>

<p id="demo2"></p>