在 JavaScript 中将字符串转换为日期对象
软件开发中的许多场景都涉及到日期和时间。在 JavaScript 中,创建日期时,通常需要将表示日期的字符串转换为 Date 对象。以下是如何实现此转换:
推荐的字符串解析方法是利用 ISO 格式以及 Date 对象构造函数。例如:
var st = "2023-05-09"; var dt = new Date(); var dt_st = new Date(st); // dt_st is a Date object in the same format as dt.
但是,仅使用 ISO 格式不足以进行可靠的解析。字符串可能被解释为 UTC 或本地时间(取决于浏览器版本)。为了确保一致性,建议以 UTC 格式存储日期并以该格式执行计算。
要将日期解析为 UTC,请在字符串后附加“Z”。例如: new Date('2021-04-11T10:20:30Z')
要显示当地时间的日期,请使用 .toUTCString(),而 .toString() 可用于显示日期以 UTC 为单位。
为了与较旧的 Internet Explorer 版本(小于 9)兼容,请考虑将日期时间字符串拆分为多个组件并初始化 Date 对象与那些零件。例如:
new Date('2011', '04' - 1, '11', '11', '51', '00') // Note: the month value must be 1 less than the actual month index (0-based).
另一种选择是使用 Moment.js 等库,它提供诸如带有时区规范的日期解析等功能。
以上是如何在 JavaScript 中可靠地将字符串转换为日期对象?的详细内容。更多信息请关注PHP中文网其他相关文章!