2012-01-08 6 views
1

방법이어떻게 자바 스크립트로 날짜 텍스트를 변환 할 수 있습니까?

Sun Jan 08 2012 00:00:00 GMT+0530 (Sri Lanka Standard Time) 

자바 스크립트와

2012-01-08 

로 변환하는?

감사

편집 :

내가 실제로 extjs라는 작업을하고 그래서 난이

을 수행하는 관리중인 extjs라는

이 작업을 수행하는 방법에 내장되어있다 몰랐다

var date = new Date("Sun Jan 08 2012 00:00:00 GMT+0530 (Sri Lanka Standard Time)"); 
console.log(Ext.Date.format(date, 'Y-m-d')); 

저에게주는 것은 2012-01-08

+3

은 SO에서이 주제에 대한 질문의 수백이있다 전달할 수 있습니다. 당신은 무엇을 시도 했습니까/발견 했습니까? 무엇이 효과가 없었습니까? –

+0

이 링크를 참조하십시오 : http://www.webdevelopersnotes.com/tips/html/javascript_date_and_time.php3 – Abbas

답변

2

은 날짜 생성자에 당신은 날짜 문자열 :

var date = new Date("Sun Jan 08 2012 00:00:00 GMT+0530 (Sri Lanka Standard Time)"); 
[ date.getFullYear(), date.getMonth() + 1 , date.getDate() + 1 ].join("-"); 
//"2012-1-8" 
+0

그 문자열의 유일한 ** 문서화 된 ** 형식이 OP가 시도한 형식과 일치하지 않습니다. 우연히도, 비록 당신이 당신의 대답을 올렸을 때 나는 다양한 브라우저에서 그것을 테스트하고있었습니다, 그리고 그것들 모두는 그것에 행복하게 보였습니다. –

2

진짜 바로 가기는 없습니다 5 판 (전 몇 년) 실제로 사용하는 형식없이, 자바 스크립트가 지원되지 표준 날짜 문자열 형식 (Date 단지 정확하게 어떤 toString 출력을 구문 분석하는 데 필요한되지 않았다 거기까지 표준에서 지정됨), 제 5 판에서 구문 분석 용 format that is explicitly supported은 인용 한 것과 같지 않습니다 (대신 ISO-8601의 단순화 된 버전입니다). 따라서 정규 표현식이나 무차별 대입 (String#indexOf, String#substring, String#split)을 사용하여 직접 구문 분석하거나 라이브러리 (예 : DateJS)를 사용하여 구문 분석해야합니다. 말했다

, 나는 시도 모든 브라우저, 그냥 new Date를 통해 당신을 위해 그것을 분석 할 행복했다 예 :
var str = "Sun Jan 08 2012 00:00:00 GMT+0530 (Sri Lanka Standard Time)"; 
var dt = new Date(str); 

Live example 내가 IE6, IE9, 크롬 15, 오페라 11, 파이어 폭스 9, 파이어 폭스을 시도

5, Safari 5, Konquerer 4.7.3 및 Midori 0.4.0 (Windows 및 Linux에 분산되어 있음). 따라서 만족스럽고 타겟 환경에서 테스트한다면 (은 웹 브라우저이므로은 자바 스크립트가 서버와 데스크톱에서도 사용됨), 그렇게하면 만족 스러울 것입니다.

+0

저는 실제로 extjs로 작업하고 있었고 이것을 수행하는 방법이 내장되어 있다는 것을 모릅니다. var date = new Date ("Sun Jan 08 2012 00:00:00 GMT + 0530 (스리랑카 표준시)"); console.log (Ext.Date.format (날짜, 'Y-m-d')); 어느 쪽이 나에게 필요한 답을 주는지 2012-01-08 –

관련 문제