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

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

DDD
DDD原創
2024-11-13 05:22:02783瀏覽

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