字符串解析的最佳格式是带有 JavaScript 日期对象构造函数的日期 ISO 格式。
但是字符串有时被解析为 UTC,有时被解析为本地时间,这取决于浏览器供应商和版本。
建议将日期存储为 UTC,并以 UTC 进行计算。
要将日期解析为 UTC,我们应该添加一个 Z:
new Date('2016-04-10T10:20:30Z');
“Z”对于确保将字符串解释为 UTC 而不是本地时间至关重要。
日期对象跟踪特定的时刻,这与时区无关。
如果我们使用日期的 UTC 方法,我们将在 UTC 中访问该时刻。
如果我们使用非 UTC 方法,我们将在本地时间访问它。
let str = "2016-04-10T17:14:00"; let date = new Date(str + "Z"); console.log("UTC string: " + date.toUTCString()); console.log("Local string: " + date.toString()); console.log("Hours local: " + date.getHours()); console.log("Hours UTC: " + date.getUTCHours());
现在 JavaScript 的日期和时间格式是 ISO-8601 格式的一个子集,除了 JavaScript 的日期总是有一个时间组件,而 ISO-8601 有一个概念,即值可能只有精确才能具体。
也就是说,JavaScript 中的 2016-04-10 是一个特定的日期和时间,但在 ISO-8601 中,它只是没有时间的日期。
日期和时间
我们可以使用 Date 对象来显示当前日期和时间、创建日历、构建计时器等。
new 运算符用于创建日期对象,并且可以使用一组方法来操作该对象。
它允许我们使用本地时间或者 UTC 时间设置和获取年、月、日、小时、分钟、秒和毫秒。
日期:2020-06-02 22:16:12 来源:oir作者:oir