2011-11-29 3 views

답변

0

. 새로운 JS Toolbox는이 기능을 보존하지 못했던 것 같습니다 (또는 적어도 분명하지는 않았습니다).

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 <[email protected]> 
* 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}; 
+0

datejs.com을 사용해야한다는 것을 알고 있습니다. 오 잘. – thugsb

0

나는 순수한 자바 스크립트에서 Date 객체를 확장하여 솔루션을 시작했습니다. 그러나 나는 지금 도망쳐 야한다.

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()); 

http://jsfiddle.net/2sYut/

아마도 당신은 그것을 마무리 (또는 오늘 언젠가 것이다). 도움이

희망 ... 나는 formatDate() function found here 사용 결국

+0

Homer6으로 바이올린이 유용하지만,이 꽤 있었다. .getXXX 함수 중 일부가 이상하게 작동했습니다. Date 객체가 올바르게 정렬되지 않았기 때문일 수 있습니다. – thugsb

2

체크 아웃 JavaScript Date Format. (here를 다운로드합니다.) 그 다음이 같은 쉽게로 : 여기

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/