我正在学习javascript,我试图弄清楚是否有一种简单的方法将标准格式化日期转换为ISO8601 format(YYYY-MM-DDThh:mm:ssTZD)。 建议?
答案 0 :(得分:6)
如果您指的是“标准格式化日期” IETF标准格式的日期字符串(即:'Thu,2009年10月15日12:30:00 GMT'){ {3}}函数,通过Date.parse构造函数,您可以使用Date对象作为输入来解析日期并编写一个简单的辅助函数来返回ISO8601日期:
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
答案 1 :(得分:5)
我使用date.js来满足我所有的非人类约会需求。
答案 2 :(得分:0)
从日期到ISO 8061:
var d = new Date();
d.toJSON(); // return "2013-09-23T07:42:18.730Z"
从ISO 8061到日期:
var ms = Date.parse('2013-09-23T07:42:18.730Z');
var date = new Date(ms);