如何解析完整日历事件上的事件开始时间.start方法
How to parse event start time on fullcalendar event.start method?
你好,我正在使用fullcalendar jQuery插件来创建一个日历应用程序。当我调用事件对象上的start方法时,我得到的日期格式是这样的:
ISO格式:
2011年11月27日星期日06:30:00 GMT+0200 (EET)
现在我想只保留事件的时间和分钟:
6小时30分钟
我如何修剪/解析只有时间与JavaScript?
可以使用Date.parse:
var your_date = "Sun Nov 27 2011 06:30:00 GMT+0200 (EET)";
var t = Date.parse(your_date); // date in milliseconds since January 1, 1970
var d = new Date(t);
d.getHours(); // 6 hours
d.getMinutes(); // 30 minutes
查看http://www.w3schools.com/jsref/jsref_obj_date.asp查看更多JavaScript日期选项
答案有点复杂,因为您可以简单地在javascript Date()
构造函数中使用字符串,如下所示:
var d = new Date("Sun Nov 27 2011 06:30:00 GMT+0200 (EET)");
但是调用d.getHours()
可能不会得到您想要的值,因为JavaScript将日期转换为您的本地时区。例如,在德国为我做alert(d)
,结果是:
Sun Nov 27 2011 05:30:00 GMT+0100 (CET)
如果这是你想要的,你就完成了。否则,您需要将其转换为所需的时区。
您可以使用Date.parse
,但当与new Date
一起使用时,您将获得当前时区中的Date对象,因此在不同的计算机上具有不同的小时值。
一个更健壮的选择是使用正则表达式。如果格式总是像您发布的那样,那么可以通过以下正则表达式获得小时数:
/ ('d+):/
这意味着:
- <
- 空间/gh>
- 一个或多个数字
- 冒号
对于分钟来说,它是类似的,但是两边都有一个冒号:
/:('d+):/
然后可以通过.exec(str)[1]
解析出这些数字,其中1
是组1,由双亲定义。
转换为数字可以使用+str
:
var str = "Sun Nov 27 2011 06:30:00 GMT+0200 (EET)",
hours = +/ ('d+):/.exec(str)[1]; // 6
minutes = +/:('d+):/.exec(str)[1]; // 30
我不太喜欢jQuery(我尽量避免使用它),所以我认为他们做了正确的事情并存储了一个Date
实例。如果是这种情况,那么您只能看到该Date
实例的(本地化的)字符串表示(就像您调用了它的toString()
方法一样),并且您可以使用它的原型方法检索组件:
var d = jQuery(…).whatever(…);
var hours = d.getHours();
var minutes = d.getMinutes();
或
var hours = d.getUTCHours();
var minutes = d.getUTCMinutes();
取决于你对什么感兴趣。不需要解析
- 处理第三方库发送的ajax请求的开始和结束事件
- 检测事件回调的开始和结束
- 从 ngDialog 模式修改完整日历事件信息(开始和结束)
- Vanilla Js:在一个事件中开始一段时间的循环,然后用第二个事件打破它?('mouseover'启
- Javascript开始处理下一个事件,然后第一次完成
- FullCalendar 开始和结束日期在获取事件时解析为 null
- 在开始联系人事件上设置新的身体位置
- 如何使用事件处理程序连续循环遍历数组列表(从结束恢复到开始)
- 更新事件全日历中的开始参数
- 为什么此 Google 日历 API 请求不返回开始时间等事件数据
- socket.io 开始和完成事件
- 什么是 d3.js 中的“开始”事件
- 如何使这个javascript函数实际收集服务器时间和倒计时,直到事件开始而不是浏览器/客户端时间
- 在窗口大小调整事件开始时暂停 Greensock 动画,在调整大小事件结束时恢复动画
- 瓦片上的事件开始在Google Maps v3中加载
- FullCalendar:更改事件开始日期和时间格式
- 如何解析完整日历事件上的事件开始时间.start方法
- 如何在另一个jquery事件开始之前瞄准并结束一个jquery事件
- PHP + jquery事件开始页面加载
- PHP js处理事件开始日期和结束日期