我创建了这个日期:
var myDate = new Date("1949-12-30");
console.log("myDate: " + myDate.toString());
控制台打印出来:
Thu Dec 29 1949 19:00:00 GMT-0500 (Hora est. Pacífico, Sudamérica)
我需要了解为什么会这样。
答案 0 :(得分:4)
这是由于时区转换造成的。您在创建日期时未指定时区,因此它使用UTC。但是toString()
会转换为本地时区,对于您来说显然是-0500,从日期时间减去5小时,将其放在前一天1900小时。
您可以使用toUTCString()
获取原始日期:
const myDate = new Date("1949-12-30");
console.log("myDate: ", myDate.toUTCString());
myDate:星期五,1949年12月30日00:00:00 GMT