首页 >web前端 >js教程 >如何在 JavaScript 中输出 ISO 8601 格式的字符串?

如何在 JavaScript 中输出 ISO 8601 格式的字符串?

DDD
DDD原创
2024-11-13 05:22:02784浏览

How to Output ISO 8601 Formatted Strings in JavaScript?

在 JavaScript 中输出 ISO 8601 格式的字符串

您有一个 Date 对象并希望为其标题呈现 ISO 8601 格式的字符串,如下所示如以下示例所示:

<abbr title="2010-04-02T14:12:07">A couple days ago</abbr>

您尝试使用 getUTC*() 方法创建 ISO 日期字符串尚未成功。

解决方案

JavaScript 提供了一个名为 toISOString() 的内置函数,它返回 ISO 8601 格式的日期和时间。您可以按如下方式使用它:

var date = new Date();
date.toISOString(); // "2011-12-19T15:28:46.493Z"

如果由于某种原因您的浏览器不支持 toISOString(),您可以使用以下腻子:

if (!Date.prototype.toISOString) {
  (function() {

    function pad(number) {
      var r = String(number);
      if (r.length === 1) {
        r = '0' + r;
      }
      return r;
    }

    Date.prototype.toISOString = function() {
      return this.getUTCFullYear() +
        '-' + pad(this.getUTCMonth() + 1) +
        '-' + pad(this.getUTCDate()) +
        'T' + pad(this.getUTCHours()) +
        ':' + pad(this.getUTCMinutes()) +
        ':' + pad(this.getUTCSeconds()) +
        '.' + String((this.getUTCMilliseconds() / 1000).toFixed(3)).slice(2, 5) +
        'Z';
    };

  }());
}

使用腻子就位,您可以使用 toISOString() 函数生成 ISO 8601 格式的字符串。

以上是如何在 JavaScript 中输出 ISO 8601 格式的字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn