>  기사  >  웹 프론트엔드  >  자바스크립트 네이티브 객체의 Date 객체의 속성과 메소드에 대한 자세한 설명_기본지식

자바스크립트 네이티브 객체의 Date 객체의 속성과 메소드에 대한 자세한 설명_기본지식

WBOY
WBOY원래의
2016-05-16 16:09:371417검색

Date 객체 생성 구문:

코드 복사 코드는 다음과 같습니다.

//Date 객체는 현재 날짜와 시간을 초기값으로 자동 저장합니다.
새로운 날짜();

//value-milliseconds: 1970년 1월 1일 00:00:00(UTC)부터 시작하는 값을 나타냅니다.
새로운 날짜(값);

//dateString-date string: 날짜를 나타내는 문자열 값입니다. 이 문자열은 구문 분석 메서드에서 인식되는 형식이어야 합니다.
새로운 날짜(dateString);

//year-year: 연도를 나타내는 정수 값입니다. 2000년 문제를 방지하려면 98이 아닌 4자리 연도를 지정하는 것이 가장 좋습니다.
//월-월 : 0(1월)부터 11(12월)까지의 월을 나타내는 정수값
//day-day: 1부터 시작하는 해당 월의 일을 나타내는 정수 값
//hour-hour: 하루의 시간을 나타내는 정수 값(24시간 형식)
//분분
//초초
//밀리초-밀리초
new Date(년, 월, 일 [, 시, 분, 초, 밀리초]);

날짜()

Date() 메소드는 오늘 날짜와 시간을 반환합니다.

코드 복사 코드는 다음과 같습니다.

console.log(Date()); //"2013년 9월 17일 화요일 12:22:55 GMT 0800(중국 표준시)"

parse()

parse() 메서드는 날짜/시간 문자열을 구문 분석하고 1970년 1월 1일 자정부터 날짜/시간까지의 밀리초 수를 반환합니다.

Date.parse(datestring)

datestring 매개변수는 필수이며 날짜 및 시간 문자열을 나타냅니다.

이 메소드는 Date 객체의 정적 메소드입니다. 이 메소드는 일반적으로 dateobject.parse()를 통하지 않고 Date.parse() 형태로 호출됩니다.

코드 복사 코드는 다음과 같습니다.

console.log(Date.parse(Date())); //1379392301000
console.log(Date.parse("1995년 8월 9일")) //807897600000

UTC()

UTC() 메서드는 표준시에 따라 1970년 1월 1일부터 지정된 날짜까지의 밀리초 수를 반환합니다.

날짜.UTC(년, 월, 일, 시, 분, 초, ms)

연도를 나타내는 4자리 숫자를 나타내는 연도가 필수입니다. 0~11 범위의 월 정수를 나타내는 월은 필수이며 날짜의 정수를 나타내는 1입니다. ~ 31, 시간은 선택 사항이며 0~23 범위의 정수를 나타냅니다. 분은 선택 사항이며 0~59 범위의 정수를 나타냅니다. 초는 선택 사항이며 0~59 범위의 정수를 나타냅니다. ; ms는 선택 사항이며 0~999 범위의 정수를 밀리초 단위로 나타냅니다.

Date.UTC()는 정적 메서드입니다. Date.UTC() 메서드의 매개 변수는 날짜와 시간(둘 다 UTC 시간)을 GMT 시간대를 기준으로 지정합니다. 지정된 UTC 시간은 Date() 생성자 및 Date.setTime() 메서드에서 사용할 수 있도록 밀리초로 변환됩니다.

ECMAScript의 Date 유형은 초기 Java의 Java.util.Date 클래스를 기반으로 구축되었습니다. 이를 위해 Date 유형은 1970년 1월 1일 UTC(협정 세계시, 국제 협정시) 자정(0시) 이후 경과된 밀리초 수를 사용하여 날짜를 저장합니다. 이 데이터 저장 형식을 사용하는 조건에서 날짜 형식으로 저장되는 날짜는 1970년 1월 1일 전후 285616년까지 정확할 수 있습니다.

참고:parse() 날짜와 시간은 GMT가 아닌 현지 시간대를 기준으로 생성됩니다. UTC()는 GMT를 기준으로 생성됩니다. 해당 매개변수도 다릅니다.

GMT: 그리니치의 표준시인 세계시(Universal Time)입니다.

코드 복사 코드는 다음과 같습니다.

var d = new Date();

console.log(Date.parse(d)) //1379393562000
console.log(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds(), d.getMilliseconds()) ); //1379422362020

ECMAScript5에는 이 메서드가 호출될 때 날짜와 시간을 나타내는 밀리초 수를 반환하는 Data.now() 메서드가 추가되었습니다. IE9에서는 이제 막 지원하기 시작했지만 연산자를 사용하여 Data 개체를 문자열로 변환하고 동일한 값을 얻을 수 있습니다.

코드 복사 코드는 다음과 같습니다.

var d1 = Date.now();
var d2 = new Date();

console.log(d1) //1379393793104
console.log(d2); //1379393793104

JavaScript의 날짜 변환은 매우 이상합니다. 매개변수가 다르기 때문에 해석 결과도 다를 뿐만 아니라 브라우저마다 성능도 다릅니다.

코드 복사 코드는 다음과 같습니다.

var d1 = 새 날짜("2012/03/13");
var d2 = new Date("2012-03-13");
var d3 = new Date("2012-3-13");

console.log(d1); //2012년 3월 13일 화요일 00:00:00 GMT 0800(중국 표준시)
console.log(d2); //2012년 3월 13일 화요일 08:00:00 GMT 0800(중국 표준시)
console.log(d3); //2012년 3월 13일 화요일 00:00:00 GMT 0800(중국 표준시)

다양한 브라우저의 성능 참조: http://dygraphs.com/date-formats.html

이러한 문제를 방지하려면 아래 조언을 따르십시오.

1. "YYYY/MM/DD"의 날짜 문자열 형식을 따르세요.
2. 하이픈과 함께 "YYYY-MM-DD" 날짜 문자열 형식을 사용하지 마세요.
3. 연도를 4자리로 지정
4. Chrome 브라우저는 다른 브라우저에 비해 더 많은 날짜 문자열을 수용할 수 있으므로 Chrome 브라우저에 문제가 없다고 해서 다른 브라우저에도 문제가 없다는 의미는 아닙니다.

자세한 내용은 JavaScript and Dates, What a Mess!SO 토론

을 참조하세요.

연속 메소드 가져오기

getDate()는 Date 객체에서 해당 월의 일자(1 ~ 31)를 반환합니다.
getDay()는 Date 객체로부터 요일(0~6)을 반환합니다.
getMonth()는 Date 객체에서 월(0 ~ 11)을 반환합니다.
getFullYear() Date 객체에서 연도를 4자리 숫자로 반환합니다. getYear()를 사용하지 않도록 주의하세요.
getHours()는 Date 객체의 시간(0 ~ 23)을 반환합니다.
getMinutes()는 Date 객체의 분(0 ~ 59)을 반환합니다.
getSeconds()는 Date 객체의 초 수(0 ~ 59)를 반환합니다.
getMilliseconds()는 Date 객체의 밀리초(0 ~ 999)를 반환합니다.
getTime()은 1970년 1월 1일 이후의 밀리초 수를 반환합니다.
getTimezoneOffset() 현지 시간과 그리니치 표준시(GMT) 사이의 차이를 분 단위로 반환합니다.
getUTCDate() Date 객체로부터 표준시를 기준으로 해당 월의 일자(1 ~ 31)를 반환합니다.
getUTCDay() 표준시를 기준으로 Date 객체로부터 요일(0 ~ 6)을 반환합니다.
getUTCMonth()는 표준시를 기준으로 Date 객체에서 월(0 ~ 11)을 반환합니다.
getUTCFulYear() 표준시를 기준으로 Date 객체에서 4자리 연도를 반환합니다.
getUTCHours()는 Date 객체의 시간(0 ~ 23)을 표준시에 따라 반환합니다.
getUTCMinutes()는 Date 객체의 분(0 ~ 59)을 표준시에 따라 반환합니다.
getUTCSeconds() Date 객체의 초(0 ~ 59)를 표준시에 따라 반환합니다.
getUTCMilliseconds()는 Date 객체의 밀리초(0 ~ 999)를 표준시에 따라 반환합니다.

계열 방법 설정

setDate()는 Date 객체에 해당 월의 날짜(1~31)를 설정합니다.
setMonth()는 Date 객체에 월(0 ~ 11)을 설정합니다.
setFullYear() Date 객체에 연도(4자리)를 설정합니다. setYear() 메서드를 사용하지 않도록 주의하세요.
setHours()는 Date 객체에 시간(0 ~ 23)을 설정합니다.
setMinutes()는 Date 객체에 분(0 ~ 59)을 설정합니다.
setSeconds()는 Date 객체에 초(0 ~ 59)를 설정합니다.
setMilliseconds()는 Date 객체에 밀리초(0 ~ 999)를 설정합니다.
setTime()은 Date 객체를 밀리초 단위로 설정합니다.
setUTCDate() Date 객체에 세계시를 기준으로 날짜(1~31)를 설정합니다.
setUTCMonth() Date 객체의 월(0 ~ 11)을 표준시에 맞춰 설정합니다.
setUTCFulYear() 표준시에 따라 Date 객체의 연도(4자리)를 설정합니다.
setUTCHours() Date 객체의 시간(0 ~ 23)을 표준시에 맞춰 설정합니다.
setUTCMinutes() Date 객체의 분(0 ~ 59)을 표준시에 따라 설정합니다.
setUTCSeconds() Date 객체의 초(0 ~ 59)를 표준시에 따라 설정합니다.
setUTCMilliseconds() Date 객체의 밀리초(0 ~ 999)를 표준시에 따라 설정합니다.

toString 시리즈 메소드

toString() Date 객체를 문자열로 변환합니다. toString()은 항상 미국 영어로 표현된 문자열을 반환합니다.
toTimeString() Date 객체의 시간 부분을 문자열로 변환합니다.
toDateString() Date 객체의 날짜 부분을 문자열로 변환합니다.
toUTCString() 표준시에 따라 Date 객체를 문자열로 변환합니다.
toLocaleString() Date 객체를 현지 시간 형식에 따라 문자열로 변환합니다.
toLocaleTimeString() Date 객체의 시간 부분을 현지 시간 형식에 따라 문자열로 변환합니다.
toLocaleDateString() Date 객체의 날짜 부분을 현지 시간 형식에 따라 문자열로 변환합니다.

코드 복사 코드는 다음과 같습니다.

var d = new Date();

console.log(d);                                                //2013년 9월 17일 화요일 13:37:04 GMT 0800(중국 표준시)
console.log(d.toString()); //2013년 9월 17일 화요일 13:37:04 GMT 0800(중국 표준시)
console.log(d.toTimeString()); //13:37:04 GMT 0800(중국 표준시)
console.log(d.toDateString() ); //2013년 9월 17일 화요일
console.log(d.toUTCString()); //2013년 9월 17일 화요일 05:37:04 GMT
console.log(d.toLocaleString()); //2013년 9월 17일 오후 1시 37분 4초
console.log(d.toLocaleTimeString()); //오후 1:37:04
console.log(d.toLocaleDateString()); //2013년 9월 17일

toLocaleString() 일련의 메소드는 매개변수를 수신하여 출력 규칙을 결정할 수 있습니다. 참조: MDN

코드 복사 코드는 다음과 같습니다.

var d = new Date();

console.log(d.toLocaleString("ko-KR")); //2013년 9월 17일 오전 1:48:24

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.