是否存在 getUTCFullYear() 与 javascript 中的 getFullYear() 不同的真实案例?
这同样适用于:
getUTCMonth() 与 getMonth()
getUTCDate() 与 getDate()
我在这里错过了什么吗?
编辑:
是否存在 getUTCFullYear() 与 javascript 中的 getFullYear() 不同的真实案例?
是否存在 getUTCFullYear() 与 javascript 中的 getFullYear() 不同的真实案例?
这同样适用于:
getUTCMonth() 与 getMonth()
getUTCDate() 与 getDate()
我在这里错过了什么吗?
编辑:
是否存在 getUTCFullYear() 与 javascript 中的 getFullYear() 不同的真实案例?
getUTC...() 方法返回 UTC 时区的日期和时间,而其他函数返回运行脚本的计算机的本地时区的日期和时间。
有时将日期和时间放在本地时区会很方便,有时将日期和时间放在独立于计算机本地时区的时区会很方便。
在 JavaScript 中有很多方法可以在时区之间进行转换,但是它们很麻烦。
所以,我想这只是为了方便。
是的,在新的一年左右。如果您的 TZ 为 -12,则该值在 12 月 31 日、凌晨 12:00 和午夜之间有所不同。
您列出的功能基本上报告了不同时区的时间,因此如果您住在格林威治子午线以西,则在 12 月 31 日晚上getUTCFullYear()
会有不同的情况。getFullYear()
例如,在您当地的时区,时间可能是晚上 9 点,但在 UTC 中,它可能已经是 1 月 1 日凌晨 2 点,所以:
var d = new Date();
d.getFullYear() == 2009 //True
d.getUTCFullYear() == 2010 //True
这是令人困惑的,因为这些方法对Date
对象进行操作而不是报告当前的 UTC 时间。但是该方法说,如果这是这里的时间,那么它在 UTC 时区是哪一年。因此,这两种方法报告的年份中的 364.75 天将是相同的。
从 12 月 31 日到 1 月 1 日,这发生在世界不同地区的不同时间。因此,UTC 时间将不同于例如新西兰的当地时间 - 因此在某些时候 getFullYear() 将与 getUTCFullYear() 相差 1。