解释javascripts Date()函数

解释javascripts Date()函数,javascript,date,Javascript,Date,为什么我有 var dt = new Date(2015, 6, 1); dt.toUTCString() 我的输出是2015年6月30日星期二23:00:00 GMT 及 2015年7月1日星期三格林威治标准时间23:00:00 很明显,我在这里遗漏了一些东西,我希望能够循环一个月中的每一天,并获得当天的Date() 我不明白为什么如果日期是1,它会说日期是30日,Javascript日期总是以本地时区生成。使用toutString将日期对象中的时间转换为UTC时间,显然在您的情况下,这意味

为什么我有

var dt = new Date(2015, 6, 1);
dt.toUTCString()
我的输出是2015年6月30日星期二23:00:00 GMT

2015年7月1日星期三格林威治标准时间23:00:00

很明显,我在这里遗漏了一些东西,我希望能够循环一个月中的每一天,并获得当天的
Date()


我不明白为什么如果日期是1,它会说日期是30日,Javascript日期总是以本地时区生成。使用
toutString
将日期对象中的时间转换为UTC时间,显然在您的情况下,这意味着-1小时。如果要使用UTC时间初始化日期对象,请使用:

var dt = new Date(Date.UTC(2015, 6, 1));
toutString()方法根据通用时间将日期对象转换为字符串

世界协调时间(UTC)是世界时间标准设定的时间


注意:UTC时间与GMT时间相同。

尝试在另一个函数中更改dt.toutString()。
地球上有很多小时,例如在美国是5点,在日本是10点等等。。。UTC是一个时区,试着改变它。

这是一个好问题,清晰、有用,而且确实有趣。我觉得我只是太愚蠢了。我以为ToutString()是唯一一个查看可读日期的函数,只是意识到有一个toDateString()可以显示正确的日期
var dt = new Date(Date.UTC(2015, 6, 1));