javascript - 将无效 javascript 格式的日期转换为 ics 标准日期时间字段

标签 javascript date datetime calendar icalendar

我所拥有的数据中的日期和时间实际上是分开的,但我认为将它们结合起来将是理想的解决方案?

未更改的数据如下所示: 2014/09/0402:30PM

var aDate = new Date('2014/09/04 02:30PM');
//Invalid date....
console.log(aDate.toString());

需要转换为 .ics 文件使用的日期,如下所示:

20140904T023000 --> 这就是上面的日期将变成的。

我该怎么做?

JSBin you could test in...

最佳答案

改变

var aDate = new Date('2014/09/04 02:30PM');

var aDate = new Date('2014/09/04 02:30 pm');

它应该可以工作。您只需在 PM 之前添加一个空格即可。这不会给您带来无效日期错误。然后您可以使用该日期获取 ICS 格式。

这是获取ICS格式的逻辑。我知道这效率不高,但试图保持简单。

var pre = 
aDate.getFullYear().toString() +
((aDate.getMonth() + 1)<10? "0" + (aDate.getMonth() + 1).toString():(aDate.getMonth() + 1).toString()) + 
((aDate.getDate() + 1)<10? "0" + aDate.getDate().toString():aDate.getDate().toString());

var post = (aDate.getHours()%12).toString() + aDate.getMinutes().toString() + "00";

console.log(pre + "T" + post);

关于javascript - 将无效 javascript 格式的日期转换为 ics 标准日期时间字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25389438/

相关文章:

javascript - JSON 和数组有什么区别?

javascript - window.onerror 不在 Firefox 中触发

来自数据库的 PHP 日期作为时间戳 - 添加 X 小时

java - 如何将文件最后修改的时间戳转换为日期?

date - D3 直方图 - 基于日期

datetime - 从人类可读格式转换日期

javascript - 我无法使用 JavaScript 在我的平方计算器中 console.log 使用 addEventListener 按下的键?

javascript - 使用 angular.js 和 ExpressJS 的 POST 请求 404(未找到)

Java - SimpleDateFormat 格式化程序以毫秒为单位返回纪元时间

ruby-on-rails - "First of every month in Ruby"怎么写