2016-04-13 20 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。請注意時區偏移量。