Javascript 日期转换为 IS8601 格式?

发布于 2024-08-08 18:30:03 字数 170 浏览 9 评论 0原文

我正在学习 javascript,我想弄清楚是否有一种简单的方法可以将标准格式的日期转换为 ISO8601 格式 (YYYY-MM-DDThh:mm:ssTZD)。 建议?

I am learning javascript and I am trying to figure out if there is a simple way to convert a standard formatted Date to ISO8601 format (YYYY-MM-DDThh:mm:ssTZD).
Advices?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

自由如风 2024-08-15 18:30:03

如果您所说的“标准格式日期”是指 Date.parse 函数和 Date 构造函数,您可以解析日期并编写一个简单的辅助函数来返回 ISO8601 日期,使用 Date对象作为输入:

function ISODateString(d){

  function pad(n){
    return n<10 ? '0'+n : n;
  }

  return d.getUTCFullYear()+'-'
    + pad(d.getUTCMonth()+1)+'-'
    + pad(d.getUTCDate())+'T'
    + pad(d.getUTCHours())+':'
    + pad(d.getUTCMinutes())+':'
    + pad(d.getUTCSeconds())+'Z'
}


var d = new Date('Thu, 15 Oct 2009 12:30:00 GMT');
console.log(ISODateString(d)); // 2009-10-15T12:30:00Z

If you mean by "standard formatted date" a date string in the IETF standard format (i.e.: 'Thu, 15 Oct 2009 12:30:00 GMT') that is acceptable by the Date.parse function and by the Date constructor, you can parse the date and write a simple helper function to return an ISO8601 date, using a Date object as input:

function ISODateString(d){

  function pad(n){
    return n<10 ? '0'+n : n;
  }

  return d.getUTCFullYear()+'-'
    + pad(d.getUTCMonth()+1)+'-'
    + pad(d.getUTCDate())+'T'
    + pad(d.getUTCHours())+':'
    + pad(d.getUTCMinutes())+':'
    + pad(d.getUTCSeconds())+'Z'
}


var d = new Date('Thu, 15 Oct 2009 12:30:00 GMT');
console.log(ISODateString(d)); // 2009-10-15T12:30:00Z
紙鸢 2024-08-15 18:30:03

我使用 date.js 来处理我所有的非-人类的约会需求。

I use date.js for all my non-human dating needs.

四叶草在未来唯美盛开 2024-08-15 18:30:03

从日期到 ISO8061:

var d = new Date();
d.toJSON(); // return "2013-09-23T07:42:18.730Z"

从 ISO8061 到日期:

var ms = Date.parse('2013-09-23T07:42:18.730Z');
var date = new Date(ms);

From Date to ISO8061:

var d = new Date();
d.toJSON(); // return "2013-09-23T07:42:18.730Z"

From ISO8061 to Date:

var ms = Date.parse('2013-09-23T07:42:18.730Z');
var date = new Date(ms);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文