[관련 권장사항: JavaScript 비디오 튜토리얼, 웹 프론트엔드]
다음으로 JS의 두 번째 일반적인 내장 객체에 대해 설명하겠습니다
. Date 객체는 Math 객체와 다릅니다. Date 객체는 생성자이므로 직접 사용할 수 있으므로 사용하기 전에 객체 인스턴스화, 즉 new를 거쳐야 합니다. Date 객체는 주로 개발 시 시간 및 날짜 문제를 처리하는 데 사용됩니다.
var date=new Date();
매개변수가 있거나 없이 Date 객체를 인스턴스화할 수 있습니다. 매개변수가 없는 경우에는 표시하려는 시간을 출력할 수 있습니다.
1:
매개변수 없이 인스턴스화하면 현재 시스템의 시간과 날짜가 표시됩니다.
var date=new Date(); //현재 시간이 표시됩니다. 산출.
매개변수를 사용한 인스턴스화에는 숫자 유형 과 문자열 유형 이라는 두 가지 유형이 있습니다. 다음은 각각 두 가지 유형의 예입니다
. 1. 숫자 매개변수의 인스턴스화:
var date=new Date(2021 ,1,18); //숫자 매개변수 console.log(date);
우리가 입력한 매개변수는 1월이지만 출력 결과는 2월(2월)이 되는 것을 볼 수 있습니다.
2. 문자열 매개변수 인스턴스화:
var date=new Date('2021-1-18 12:56:00') //문자열 매개변수 console.log(date);
매개변수가 1월이고 출력 결과도 1월이므로 숫자 매개변수보다 문자열 매개변수가 더 자주 사용됩니다.
우리는 이미 Math 개체에 직접 사용할 수 있는 많은 속성과 메서드가 있다는 것을 알고 있습니다. Date 개체에도 동일하게 세 가지가 일반적으로 사용됩니다. 연도, 월, 일 형식을 지정하는 데 사용되는 메서드:
getFullYear() 현재 연도
getMonth()를
출력합니다.이번 달을 출력합니다. (출력 월은 실제 달보다 1이 적고, 실제 달의 출력에는 1을 더해야 한다는 점에 유의하세요.)
getDate() 현재 날짜
getDay()를
출력합니다.현재 요일을 출력합니다 (월요일부터 일요일까지 해당 숫자: 1 2 3 4 5 6 0)
var Date=new Date(); console.log(Date.getFullYear()); //현재 연도를 출력합니다. console.log(Date.getMonth() + 1); //출력 결과는 이번 달 이전 달입니다. 반환하려면 수동으로 1을 추가해야 합니다. 이번 달 console .log(Date.getDate()); //현재 요일 출력 console.log(Date.getDay()) //현재 요일 출력
출력 효과를 2021년 1월 18일 화요일이 되도록 하려면 다음을 수행하면 됩니다
(요일은 하나의 숫자만 반환할 수 있지만 습관에 따라 '요일'을 반환하고 싶기 때문에 반환된 숫자를 인덱스로 처리하고 일요일부터 토요일까지 배열에 넣습니다. 일요일은 0을 반환하므로 일요일을 배열의 첫 번째 위치(인덱스 0에 해당)에 넣습니다)
var arr=['Sunday','Monday ','화요일','수요일','목요일','금요일','토요일']; var 날짜=새 날짜(); var year=Date.getFullYear(); var 월=Date.getMonth() + 1; var 날짜=Date.getDate(); var day=Date.getDay(); console.log(연도 + '연도' + 월 + '월' + 날짜 + '일' + arr[일]);
위의 연도, 월, 일 형식을 지정하는
getHours()
와 유사합니다.현재 시간을 출력합니다.
getMinutes() 현재 분
getSeconds()를
출력합니다.현재 두 번째를 출력합니다.
var Date=new Date(); console.log(Date.getHours()); //현재 시간 출력 console.log(Date.getMinutes()); //현재 시간 출력 console.log(Date.getSeconds()); 초
시, 분, 초를 연속 형식으로 출력합니다.
이를 함수로 캡슐화하고 삼항 연산자를 사용하여 10보다 작은 숫자에 0을 더합니다. 이는 시간
함수 time()을보는 일반적인 습관과 일치합니다.
{ var 시간=새 날짜(); var h=time.getHours(); h = h<10 ? '0'+h : h; var m=time.getMinutes(); m = m<10 ? '0'+m : m; var s=time.getSeconds(); s = s<10 ? '0'+s : s; h+'시간'+m+'분'+s+'초'를 반환합니다. } console.log(time());
valueOf()
getTime을
표현하는 방법에는 4가지가 있습니다
.()
var 날짜= 새로운 날짜(); console.log(date.valueOf()); console.log(date.getTime());
또는 총 밀리초 수를 반환하는 또 다른 간단한 작성 방법 var date=+new Date()
;console.log
(
date);
그리고 H5에 추가된 새로운 메소드입니다. 이 메소드는 객체를 인스턴스화하지 않고도 얻을 수 있으며 더 간단합니다.
Six:일상생활에서의
카운트다운은 Taobao, JD.com의 Double Eleven Flash Sale 카운트다운 등 개발 중에 여러 곳에서 사용됩니다. 카운트다운 효과를 어떻게 작성해야 할까요? 먼저 현재 시간을 얻는 방법에 대해 배운 내용을 생각해 본 다음, 시간은 충분하지만, 빼면 표준 시간이 음수가 될 가능성이 높습니다(예: 02-12). 따라서 타임 스탬프는 방금 언급한 총 밀리초 수입니다. 이를 위해 일련의 작업을 수행한 후 설정된 총 밀리초 수에서 현재 총 밀리초 수를 뺀 값을 사용할 수 있습니다. 단위 변환의 경우 간단한 카운트다운 사례를 얻을 수 있습니다. 먼저 단위 변환 간의 관계를 능숙하게 기억해야 합니다.
1초 = 1000밀리초
, 일 = 초/60/60/24
시간 = 초 숫자/60/60% 24
분=초/60%60
초=초%60
나누 수 없는 초의 경우, parsInt() 메소드를 사용하여 반올림할 수 있습니다. 이러한 변환 관계를 사용하면 이 카운트다운 사례는
count(time) 함수를사용하여 쉽게 수행할 수 있습니다.
{ var nowtime=+new Date(); //현재 시간을 가져옵니다. var aimtime=+new Date(time) //목표 시간(종료 시간)을 가져옵니다. var times=(aimtime-nowtime)/1000; //카운트다운 시간 차이(밀리초)를 가져옵니다. 1000을 나누어 초를 가져옵니다. var d=parseInt(times/60/60/24) //카운트다운 날짜를 가져옵니다. d<10?'0' +d:d; //10보다 작은 시간에 0을 더함 var h=parseInt(times/60/60%24) //카운트다운 시간 가져오기 h=h<10?'0'+h:h //10보다 작은 시간에 0을 추가합니다. var m=parseInt(times/60%60) //카운트다운 분 가져오기 m=m<10?'0'+m:m //10보다 작은 시간에 0을 추가합니다. var s=parseInt(times%60) //카운트다운 초 가져오기 s=s<10?'0'+s:s //10보다 작은 시간에 0을 추가합니다. return d + '일' + h + '시간' + m + '분' + s + '초' //카운트다운 반환}Alert('카운트다운이 남아있습니다' + count('2022-1-18 16:30:00')); //
타겟
의 종료시간을 호출하고 입력합니다.
[관련 권장사항: 자바스크립트 동영상 튜토리얼, 웹 프론트엔드]
JavaScript의 Date 객체에 대한 자세한 내용은 소스 코드 네트워크의 다른 관련 기사를 참고하세요!