将日期字符串格式化为ISO8601

时间:2013-05-19 23:54:35

标签: javascript date cosm xively

我正在对COSM(现在是Xively)进行JSON调用,因此它将返回我可以使用Highchart的高价图表绘制的数据。请参阅:jsfiddle.net/T7D5U/2 /

目前,开始日期和结束日期的硬编码如下:

 $.getJSON('http://api.xively.com/v2/feeds/4038/datastreams/9.json?start=2013-05-01T00:00:00Z&end=2013-05-19T23:00:00Z&interval=3600?key=dNSiSvXZtR6QBUqbzll4CCgnngGSAKxIQVFSeXBneGpqWT0g', function(data) {

我希望开始和结束日期是动态的。我想要结束日期和时间。如果现在是2013年5月19日下午2:30,它将被格式化为:

end=2013-05-19T14:30:00Z

我希望现在的开始时间减去10天,这可以在今天进行。所以开始时间看起来像这样:

start=2013-05-09T00:00:00Z 
顺便说一下,我不熟悉JavaScript(只是C)。

另外,当我尝试在stackoverflow帖子中放置一个jsfiddle链接时,我收到一条错误,上面写着“链接到jsfiddle.net必须附带代码”。我对此感到困惑;我不知道我应该做什么。

1 个答案:

答案 0 :(得分:0)

我会这样做:

// Set end to current date and time on client
var end = new Date();

// Copy end date and assign to start
var start = new Date(+end);

// Set date of start to 10 days ago
start.setDate(start.getDate() - 10);

alert(start.toISOString());