JavaScript에서 현재 날짜에 요일 추가
이 자습서에서는 JavaScript에서 현재 날짜 또는 사용자 지정 날짜에 새 날짜를 추가하는 방법을 소개합니다. 먼저 JavaScript Date
클래스에서Date
가 무엇인지와 다른 메소드를 소개합니다.
JavaScript Date
클래스 이해
JavaScript에서 Date
클래스는 기본적으로 UTC 1970 년 1 월 1 일 자정 이후 경과 한 밀리 초 수입니다. 컴퓨터에서 날짜 및 시간 값을 기록하는 데 사용되는 UNIX 시대와는 다릅니다.
Date
클래스 사용을 시작하려면 처리 할 새Date
객체를 만들어야하며 다음 예제에서 볼 수있는 것처럼 여러 방법으로 해당 객체를 만들 수 있습니다.
var myDate = new Date();
var myDateOne = new Date('August 19, 2020 23:15:30');
var myDateTwo = new Date('2020-08-17T03:24:00');
var myDateThree = new Date(2020, 07, 17);
var myDateFour = new Date(2020, 07, 17, 3, 24, 0);
console.log(myDate);
console.log(myDateOne);
console.log(myDateTwo);
console.log(myDateThree);
console.log(myDateFour);
매개 변수를 제공하지 않고Date()
생성자를 호출하면Date
객체는 현재 날짜와 시간을 갖게됩니다. 매개 변수가 주어지면 해당 객체는 해당 시점을 나타내는 구문 분석 된 문자열을 갖게됩니다.
new Date(2020, 07, 17)
예제와 같이 적절한 날짜 및 시간 구성 요소 값을 제공하면 인덱스는 1이 아닌 0에서 시작해야합니다.
출력:
Fri Nov 13 2020 19:16:58 GMT+0200 (Eastern European Standard Time)
Mon Aug 17 2020 23:15:30 GMT+0200 (Eastern European Standard Time)
Mon Aug 17 2020 03:24:00 GMT+0200 (Eastern European Standard Time)
Mon Aug 17 2020 00:00:00 GMT+0200 (Eastern European Standard Time)
Mon Aug 17 2020 03:24:00 GMT+0200 (Eastern European Standard Time)
우리는 종종Date
클래스의 많은 메소드를 사용합니다. 다음 섹션에서 그들 중 일부를 설명 할 것입니다.
JavaScript에서Date()
에 요일 추가
JavaScript에서 특정 일수를 추가하는 함수를 만들고 싶다고 가정 해 보겠습니다. 이 경우 현지 시간에 따라 선택한 날짜에 대해 1 일에서 31 일 사이의 일을 반환하는getDate()
라는Date
클래스 메서드와setDate() 메서드를 사용하여 구현할 수 있습니다.
는 특정 날짜의 날짜를 설정합니다.
예를 들어 날짜가 ‘11/02/2020 ‘인 경우 하루를 더하면 ‘12/02/2020’이됩니다. ‘31/03/2020 ‘인 경우 유효한 범위는’[1, 31]‘뿐이므로 ‘01/04/2020’이됩니다.
Date
객체에 날짜를 추가하는 다음 예를 살펴 보겠습니다.
function addDaysToDate(date, days) {
var res = new Date(date);
res.setDate(res.getDate() + days);
return res;
}
var tmpDate = new Date(2020, 07, 20); // Augest 20, 2020
console.log(addDaysToDate(tmpDate, 2));
출력:
Sat Aug 22 2020 00:00:00 GMT+0200 (Eastern European Standard Time)
오늘에 그 날을 추가하고 싶다면 위 코드에서new Date(date)
를new Date()
로 바꾸거나new Date()
를 함수에 직접 전달할 수 있습니다.
var tmpDate = new Date(); // Today
console.log(addDaysToDate(tmpDate, 2)); // today + 2
출력:
Sun Nov 15 2020 22:55:06 GMT+0200 (Eastern European Standard Time)
JavaScript에서prototype
을 사용하여Date()
에 요일 추가
추가 할 일 수로 숫자 입력 만 취하는 Date
클래스에 대한 프로토 타입을 만들려면 다음 예제와 같이 구현할 수 있습니다.
Date.prototype.addDays =
function(noOfDays) {
var tmpDate = new Date(this.valueOf());
tmpDate.setDate(tmpDate.getDate() + noOfDays);
return tmpDate;
}
var myDate = new Date(); // today
console.log(myDate.addDays(2)); // today + 2
출력:
Sun Nov 15 2020 22:59:06 GMT+0200 (Eastern European Standard Time)