javascript에서 날짜 관련된 코딩을 할때... 그 때 마다 날짜 포맷 정해주고 중간에 0 넣고 빼고 어쨋뜬 으아아아앙 귀찮아서
혹 누군가 관련된 라이브러리나 코드를 만들어놓지 않았을가 검색하다가 찾아냈다.
(사실 내가 만들어보겠다고 짜다가 포기)
원본 출처는 이곳
http://www.codeproject.com/Articles/11011/JavaScript-Date-Format
// a global month names array var gsMonthNames = new Array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ); // a global day names array var gsDayNames = new Array( 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ); // the date format prototype Date.prototype.format = function(f) { if (!this.valueOf()) return ' '; var d = this; return f.replace(/(yyyy|mmmm|mmm|mm|dddd|ddd|dd|hh|nn|ss|a\/p)/gi, function($1) { switch ($1.toLowerCase()) { case 'yyyy': return d.getFullYear(); case 'mmmm': return gsMonthNames[d.getMonth()]; case 'mmm': return gsMonthNames[d.getMonth()].substr(0, 3); case 'mm': return (d.getMonth() + 1).zf(2); case 'dddd': return gsDayNames[d.getDay()]; case 'ddd': return gsDayNames[d.getDay()].substr(0, 3); case 'dd': return d.getDate().zf(2); case 'hh': return ((h = d.getHours() % 12) ? h : 12).zf(2); case 'nn': return d.getMinutes().zf(2); case 'ss': return d.getSeconds().zf(2); case 'a/p': return d.getHours() < 12 ? 'a' : 'p'; } } ); } String.prototype.times = function(n) {var s = '';for (var i = 0; i < n; i++) s += this; return s;} String.prototype.zf = function(len){return "0".times(len - this.length) + this;}; Number.prototype.zf = function(len){return this.toString().zf(len);};
SomeDiv.innerText = (new Date()).format('dddd, mmmm dd, yyyy.');
형태로 사용하면 된다.
한국에 맞게 상요하려면 위의 요일 영문 부분들을 월요일, 화요일 등으로 바꿔주면되고... 월 이름은 사실 필요없다 -_-;;
그리고 이미 그렇게 만들어놓으신 분이 계심
'javascript > Example' 카테고리의 다른 글
[javascript] (exam) 자바스크립트를 이용한 SMS 80바이트 제한 (1) | 2011.12.06 |
---|---|
[javascript] (exam) 날짜 선택 제한 하기. (4) | 2011.10.07 |