JavaScript에서 날짜에 월을 추가하는 방법
JavaScript에서 날짜에 월을 추가하고 싶습니다.
예를 들어 다음과 같습니다.날짜를 삽입하고 있습니다.06/01/2011
(형식mm/dd/yyyy
이 날짜에 8개월을 추가하고 싶습니다.나는 그 결과를 원한다.02/01/2012
.
따라서 월을 추가할 때 연도도 늘어날 수 있습니다.
2019년 6월 25일자로 수정:
var newDate = new Date(date.setMonth(date.getMonth()+8));
이전 버전:
var jan312009 = new Date(2009, 0, 31);
var eightMonthsFromJan312009 = jan312009.setMonth(jan312009.getMonth()+8);
날짜를 연도, 월 및 일 구성요소로 나눈 다음 날짜:
var d = new Date(year, month, day);
d.setMonth(d.getMonth() + 8);
다테가 한 해를 마무리할 것이다.
datejs를 보고 날짜를 처리하는 엣지 케이스에 월을 추가하는 데 필요한 코드를 제거했습니다(윤년, 월 단축 등).
Date.isLeapYear = function (year) {
return (((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0));
};
Date.getDaysInMonth = function (year, month) {
return [31, (Date.isLeapYear(year) ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month];
};
Date.prototype.isLeapYear = function () {
return Date.isLeapYear(this.getFullYear());
};
Date.prototype.getDaysInMonth = function () {
return Date.getDaysInMonth(this.getFullYear(), this.getMonth());
};
Date.prototype.addMonths = function (value) {
var n = this.getDate();
this.setDate(1);
this.setMonth(this.getMonth() + value);
this.setDate(Math.min(n, this.getDaysInMonth()));
return this;
};
이것에 의해, 엣지 케이스를 처리하는 Javascript 날짜 오브젝트에 「add Months()」함수가 추가됩니다.쿨라이트 주식회사 덕분이에요!
용도:
var myDate = new Date("01/31/2012");
var result1 = myDate.addMonths(1);
var myDate2 = new Date("01/31/2011");
var result2 = myDate2.addMonths(1);
-> new Date.add Months -> mydate.add Months
result 1 = "2012년 2월 29일"
result2 = "2011년 2월 28일"
datejs를 보는 것을 강력히 추천합니다.api를 사용하면 한 달(및 다른 많은 날짜 기능)을 쉽게 추가할 수 있습니다.
var one_month_from_your_date = your_date_object.add(1).month();
의 좋은 점datejs
엣지 케이스를 처리한다는 것입니다.기술적으로는 네이티브를 사용하여 이 작업을 수행할 수 있습니다.Date
오브젝트 및 메서드가 첨부되어 있습니다.하지만 결국 가장자리에 있는 케이스에서 머리카락을 뽑게 되죠datejs
널 돌봐주었어
게다가 오픈 소스입니다!
언급URL : https://stackoverflow.com/questions/5645058/how-to-add-months-to-a-date-in-javascript
'programing' 카테고리의 다른 글
SQL 쿼리를 JSON 형식의 텍스트 파일로 내보내기 (0) | 2022.10.21 |
---|---|
Python 들여쓰기 수정 방법 (0) | 2022.10.21 |
Larabel의 쿼리 빌더 JSON 셀렉터 'field->key'가 구문 오류를 발생시킵니다. (0) | 2022.10.21 |
Class.newInstance() 대신 사용할 항목 (0) | 2022.10.21 |
AngularJS: 컨트롤러 간에 변수를 전달하려면 어떻게 해야 합니까? (0) | 2022.10.21 |