JavaScript로 현재 날짜를 얻으려면 어떻게합니까?
답변
현재 날짜와 시간이 포함 new Date()
된 새 Date
객체 를 생성하는 데 사용 합니다 .
var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();
today = mm + '/' + dd + '/' + yyyy;
document.write(today);
이렇게하면 오늘 날짜가 mm / dd / yyyy 형식으로 표시됩니다.
today = mm +'/'+ dd +'/'+ yyyy;
원하는 형식으로 변경 하면됩니다.
답변
var utc = new Date().toJSON().slice(0,10).replace(/-/g,'/');
document.write(utc);
Firefox 및 Safari에서 대시가있는 날짜를 인식하지 못하므로과 같은 변수 replace
를 재사용하려는 경우이 옵션을 사용하십시오 .utc
new Date(utc)
답변
업데이트되었습니다! , 아래로 스크롤
최종 사용자에게 간단한 것을 원한다면 … Also, fixed a small suffix issue in the first version below. Now properly returns suffix.
var objToday = new Date(),
weekday = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'),
dayOfWeek = weekday[objToday.getDay()],
domEnder = function() { var a = objToday; if (/1/.test(parseInt((a + "").charAt(0)))) return "th"; a = parseInt((a + "").charAt(1)); return 1 == a ? "st" : 2 == a ? "nd" : 3 == a ? "rd" : "th" }(),
dayOfMonth = today + ( objToday.getDate() < 10) ? '0' + objToday.getDate() + domEnder : objToday.getDate() + domEnder,
months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'),
curMonth = months[objToday.getMonth()],
curYear = objToday.getFullYear(),
curHour = objToday.getHours() > 12 ? objToday.getHours() - 12 : (objToday.getHours() < 10 ? "0" + objToday.getHours() : objToday.getHours()),
curMinute = objToday.getMinutes() < 10 ? "0" + objToday.getMinutes() : objToday.getMinutes(),
curSeconds = objToday.getSeconds() < 10 ? "0" + objToday.getSeconds() : objToday.getSeconds(),
curMeridiem = objToday.getHours() > 12 ? "PM" : "AM";
var today = curHour + ":" + curMinute + "." + curSeconds + curMeridiem + " " + dayOfWeek + " " + dayOfMonth + " of " + curMonth + ", " + curYear;
document.getElementsByTagName('h1')[0].textContent = today;
<h1></h1>
UBBER UPDATE 많은 지연 후 마침내 GitHubbed를 사용하여이 솔루션을 내가 사용했던 최종 솔루션으로 업데이트했습니다. 더 단맛을 내기 위해 막판 편집을했습니다! 오래된 jsFiddle을 찾고 있다면 이것을 참조하십시오 .
이 업데이트는 위의 원래 대답만큼 작지는 않지만 비교적 작은 2 가지 맛으로 제공됩니다 . 아주 작은 것을 원한다면 그와 함께하십시오.
또한 참고 : 이것은 여전히 moment.js보다 덜 부풀어 있습니다. moment.js는 훌륭하지만, 세속적 인 방법이 너무 많아 언어처럼 배우는 순간이 필요합니다. 여기 광산은 PHP 와 동일한 공통 형식을 사용합니다 : date .
빠른 링크
- Date.format.min.js 5.08 KB
- dateFormat.min.js 4.16 KB
맛 1
new Date().format(String)
내 개인적인 관심. 금기를 알고 있지만 Date Object에서 훌륭하게 작동합니다. Date Object에 대한 다른 개조에 유의하십시오.
// use as simple as
new Date().format('m-d-Y h:i:s'); // 07-06-2016 06:38:34
풍미 2
dateFormat(Date, String)
더 전통적인 올인원 방법. 이전의 모든 기능을 가지고 있지만 Date 매개 변수가있는 메소드를 통해 호출됩니다.
// use as simple as
dateFormat(new Date(), 'm-d-Y h:i:s'); // 07-06-2016 06:38:34
보너스 맛 (jQuery 필요)
$.date(Date, String)
간단한format
옵션 이상의 것을 포함 합니다. 기본 Date 객체를 확장하고와 같은 메서드를 포함합니다addDays
. 자세한 내용은 Git을 참조하십시오 .
이 모드에서 형식 문자는 PHP : date에서 영감을 얻었습니다 . 전체 목록을 보려면 README 를 참조하십시오.
이 모드는 또한 훨씬 더 긴 미리 만들어진 형식 목록을 가지고 있습니다. 미리 만들어진 형식을 사용하려면 간단히 키 이름을 입력하십시오.dateFormat(new Date(), 'pretty-a');
- ‘화합물’
- ‘commonLogFormat’== ‘d / M / Y : G : i : s’
- ‘exif’== ‘Y : m : d G : i : s’
- ‘isoYearWeek’== ‘Y \\ WW’
- ‘isoYearWeek2’== ‘Y-\\ WW’
- ‘isoYearWeekDay’== ‘Y \\ WWj’
- ‘isoYearWeekDay2’== ‘Y-\\ WW-j’
- ‘mySQL’== ‘Ymd h : i : s’
- ‘postgreSQL’== ‘Yz’
- ‘postgreSQL2’== ‘Yz’
- ‘비누’== ‘Ymd \\ TH : i : su’
- ‘soap2’== ‘Ymd \\ TH : i : s.uP’
- ‘unixTimestamp’== ‘@U’
- ‘xmlrpc’== ‘Ymd \\ TG : i : s’
- ‘xmlrpcCompact’== ‘Ymd \\ tGis’
- ‘wddx’== ‘Ynj \\ TG : i : s’
- ‘상수’
- ‘아메리카 인’== ‘F j Y’
- ‘AMERICANSHORT’== ‘m / d / Y’
- ‘AMERICANSHORTWTIME’== ‘m / d / Y h : i : sA’
- ‘ATOM’== ‘Ymd \\ TH : i : sP’
- ‘COOKIE’== ‘l dMY H : i : s T’
- ‘유럽’== ‘j FY’
- ‘EUROPEANSHORT’== ‘dmY’
- ‘EUROPEANSHORTWTIME’== ‘dmY H : i : s’
- ‘ISO8601’== ‘Ymd \\ TH : i : sO’
- ‘LEGAL’== ‘j FY’
- ‘RFC822’== ‘D d M y H : i : s O’
- ‘RFC850’== ‘l dMy H : i : s T’
- ‘RFC1036’== ‘D d M y H : i : s O’
- ‘RFC1123’== ‘D d MYH : i : s O’
- ‘RFC2822’== ‘D d MYH : i : s O’
- ‘RFC3339’== ‘Ymd \\ TH : i : sP’
- ‘RSS’== ‘D d MYH : i : s O’
- ‘W3C’== ‘Ymd \\ TH : i : sP’
- ‘예쁜’
- ‘pretty-a’== ‘g : i.sA l jS \\ o \\ f FY’
- ‘pretty-b’== ‘g : iA l jS \\ o \\ f FY’
- ‘pretty-c’== ‘n / d / Y g : iA’
- ‘pretty-d’== ‘n / d / Y’
- ‘pretty-e’== ‘F jS-g : ia’
- ‘pretty-f’== ‘g : iA’
알다시피, double \
을 사용 하여 캐릭터를 벗어날 수 있습니다 .
답변
가장 짧은.
“2018-08-03″과 같은 형식을 얻으려면 :
let today = new Date().toISOString().slice(0, 10)
console.log(today)
“8/3/2018″과 같은 형식을 얻으려면 :
let today = new Date().toLocaleDateString()
console.log(today)
또한 로케일 을 인수로 전달할 수 있습니다 ( 예 toLocaleDateString("sr")
: 등).
답변
시간 정보가없는 날짜 만 원하면 다음을 사용하십시오.
var today = new Date();
today.setHours(0, 0, 0, 0);
document.write(today);
답변
이 시도:
var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
document.write("<b>" + day + "/" + month + "/" + year + "</b>")
결과는 다음과 같습니다
15/2/2012