2016-04-13 19 views
4

其实我试图设置一个jQuery日期选择器与determinated日期,但是当我创建了集件组新的日期,JavaScript的扔我一天减的JavaScript创建新的日期减一天

代码:

new Date('2016-04-14') 

结果:

Wed Apr 13 2016 17:00:00 GMT-0700 (US Mountain Standard Time) 

jsfiddle

+3

'2016-04-14 00:00:00 UTC'与'2016-04-13 17:00:00 GMT-7'相同(请注意美国时间是从午夜开始的7小时) – vesse

+0

'date .setDate(date.getDate() - 1);' – Rayon

回答

4

ÿ OU应该read the fine manual

注:解析与Date构造日期字符串(和Date.parse,它们是相同的)是极力劝阻由于浏览器的差异和矛盾。

您应该使用new Date(2016, 3, 14)(3,因为月份整数是从零开始)。这将在4月14日午夜的时区中创建日期。

+0

什么是这里的傻瓜证明?从服务器端获取它? –

+0

@ techie_28完全取决于您的要求 – Phil

+0

如果用户在许多不同的时区,我们是否可以采用适合所有人的方式? –

2

要获取UTC(GMT)时间,请使用.toUTCString()而不是默认.toString()

如果要从字符串创建本地时间午夜日期,请使用iso8601,如2016-04-01T00:00:00-07:00。请注意时区偏移量。