2017-04-13 11 views
0

我有一个表单将json数据提交给包含日期字段的服务器。如何剥离json提交的时间元素?

如果我这样做:

var origDate = new Date(); 
var date = new Date(origDate.getFullYear(), origDate.getMonth(), origDate.getDate()); 

的日期的04:00:00时结束了 - 我想的时候只是00:00:00

我也试过日期.setHours(0)但时间结束了12:00:00

如何使时间00:00:00?

+2

这听起来像是一个时区问题。 – Barmar

+0

我同意巴尔玛。如果可能,您应该使用UNIX时间戳。 –

回答

2

像这样:

var origDate = new Date(); 
var date = new Date(origDate.getFullYear(), origDate.getMonth(), origDate.getDate(), 0, 0, 0); 
0

事实上,时间是正确的,但格式化是给错误的时间值,你必须打印为string,而不是一个Date

你可以看到打印Date,并在下面的演示打印String之间的格式差异:

var origDate = new Date(); 
 
var date = new Date(origDate.getFullYear(), origDate.getMonth(), origDate.getDate()); 
 

 
console.log(date); 
 
console.log(String(date));

说明:

你要打印日期作为字符串,所以它不会被浏览器格式化。

您可以在new Date() vs Date() and why does it return a different time (-2 hours)?了解有关此行为的更多信息。