new Date() works differently in Chrome and Firefox

cuongle picture cuongle · Feb 27, 2013 · Viewed 66.9k times · Source

I want to convert date string to Date by javascript, use this code:

var date = new Date('2013-02-27T17:00:00');
alert(date);

'2013-02-27T17:00:00' is UTC time in JSON object from server.

But the result of above code is different between Firefox and Chrome:

Firefox returns:

Wed Feb 27 2013 17:00:00 GMT+0700 (SE Asia Standard Time)

Chrome returns:

Thu Feb 28 2013 00:00:00 GMT+0700 (SE Asia Standard Time) 

It's different 1 day, the correct result I would expect is the result from Chrome.

Demo code: http://jsfiddle.net/xHtqa/2/

How can I fix this problem to get the same result from both?

Answer

Petr Abdulin picture Petr Abdulin · Feb 27, 2013

The correct format for UTC would be 2013-02-27T17:00:00Z (Z is for Zulu Time). Append Z if not present to get correct UTC datetime string.