Google Feed API日期到HTML5日期时间
Google Feed API date to HTML5 datetime
Google Feed API输出的发布日期格式为:"13 Apr 2007 12:40:07 -0700"。
我希望将其更改为有效的HTML5
有简单的方法吗?或者图书馆?
查看JavaScript日期格式。(下载)。那么就像这样简单:
var input = "13 Apr 2007 12:40:07 -0700";
var date = Date.parse(input);
var output = dateFormat(date, 'yyyy-mm-dd"T"hh:MM:ssoD');
// output == 2007-04-13T12:40:07-0700D
演示:http://jsfiddle.net/pkC3s/2/
我通过扩展Date对象在纯javascript中为您开始了一个解决方案。但是,我现在得走了。
http://jsfiddle.net/2sYut/Date.prototype.getHtml5String = function(){
return this.getFullYear() + "-" + this.getMonth() + "-" + this.getDay() + "T" + this.getHours() + ":" + this.getMinutes() + ":" + this.getSeconds() + "TZ" + this.getTimezoneOffset();
};
var d = new Date( "13 Apr 2007 12:40:07 -0700" );
alert( d.getHtml5String() );
也许你可以完成它(或者我今天某个时候会完成)。
最后,我使用了这里的formatDate()函数。新的JS工具箱似乎没有保留这个函数(或者至少没有使它明显)。
var entryDate = new Date(entry.publishedDate); // From Google Feed API
html5date = formatDate(entryDate,'yyyy-MM-ddThh:mm:ss')+entryDate.toString().slice(28,33);
切片是为了获取时区,而formatDate似乎不支持。
为了保存,下面是简化后的函数:
/*
* Author: Matt Kruse <matt@mattkruse.com>
* http://www.mattkruse.com/
* formatDate (date_object, format)
* Returns a date in the output format specified.
* The format string uses the same abbreviations as in getDateFromFormat()
*/
var MONTH_NAMES="January,February,March,April,May,June,July,August,September,October,November,December,Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY_NAMES="Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",");function LZ(b){return(0>b||9<b?"":"0")+b} function formatDate(b,f){var f=f+"",h="",g=0,e="",c="",e=b.getYear()+"",c=b.getMonth()+1,i=b.getDate(),j=b.getDay(),d=b.getHours(),k=b.getMinutes(),l=b.getSeconds(),a={};4>e.length&&(e=""+(e-0+1900));a.y=""+e;a.yyyy=e;a.yy=e.substring(2,4);a.M=c;a.MM=LZ(c);a.MMM=MONTH_NAMES[c-1];a.NNN=MONTH_NAMES[c+11];a.d=i;a.dd=LZ(i);a.E=DAY_NAMES[j+7];a.EE=DAY_NAMES[j];a.H=d;a.HH=LZ(d);a.h=0==d?12:12<d?d-12:d;a.hh=LZ(a.h);a.K=11<d?d-12:d;a.k=d+1;a.KK=LZ(a.K);a.kk=LZ(a.k);a.a=11<d?"PM":"AM";a.m=k;a.mm=LZ(k);a.s= l;for(a.ss=LZ(l);g<f.length;){e=f.charAt(g);for(c="";f.charAt(g)==e&&g<f.length;)c+=f.charAt(g++);h=null!=a[c]?h+a[c]:h+c}return h};
相关文章:
- 使用angularJS设置HTML5日期输入字段的默认值
- 想要初始化“;min”;输入类型的属性=“;日期“;在HTML5中,具有特定日期格式的日期值
- HTML5日期验证
- Kendo ui Grid:标准的HTML5输入日期时间可以用作单元格编辑器吗
- 如何在 HTML5 中的日期选择器中对所选月份应用条件
- 使用从模型传递的数据填充 HTML5 日期选取器
- 如何验证 HTML5 日期格式
- 移动HTML5应用程序-确定用户的日期/时间偏好
- jQuery datetime to_string(iOS html5日期时间选择器)
- bootstrap-date_picker结合响应的html5类型日期用于iphone视图
- Html5本机日期选择器,正在更改
- 将挖空值绑定到 HTML5 日期选取器 (Chrome)
- HTML5输入日期的AngularJS验证
- 使用Knockout.js如何将Date属性绑定到HTML5日期选择器
- 将两个日期与从HTML5数据中提取的javascript进行比较
- 输入键表单提交失败,HTML5日期输入
- 希望将polyfill与HTML5结合使用,使日期类型在firefox中工作
- 如何在HTML5中添加时间选择器,它具有HH:MM格式和所选日期
- 如何比较保存在html5本地存储的jquery日期已经过去了12个小时
- 如何设置HTML5表单最小限制日期选择器为"签到日期(用户输入)"