我有一个字符串“2014-01-27”。现在如何将其转换为“2014-01-27T00:00:00.0000000”? 这是 JavaScript 中有效的日期格式吗?
最佳答案
"2014-01-27T00:00:00.0000000" ? Is that a valid date format avail in javascript ?
是的,但是……
ECMA-262 says如果类似 ISO 8601 的字符串缺少时区(例如 2014-01-27T00:00:00.0000000),则假定为 UTC。但是,如果您将这样的字符串传递给 Date.parse,某些浏览器会将其视为本地浏览器,有些浏览器会将其视为 UTC(有些浏览器,如 IE 8,根本不会解析它,即使有时区)。
为避免这种情况,请手动解析字符串并创建 UTC 日期:
function parseYMDasUTC(s) {
var b = s.split(/\D/);
return new Date(Date.UTC(b[0],--b[1],b[2]));
}
console.log(parseYMDasUTC("2014-01-27")); // Mon Jan 27 2014 08:00:00 GMT+0800
关于javascript - 转换 Javascript 日期时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23649877/