项目中需要用到,自己写了一个。Javascript日期按月加减
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta charset="utf-8"> <title></title> <script> function dateToDate(date) { var sDate = new Date(); if (typeof date == 'object' && typeof new Date().getMonth == "function" ) { sDate = date; } else if (typeof date == "string") { var arr = date.split('-') if (arr.length == 3) { sDate = new Date(arr[0] + '-' + arr[1] + '-' + arr[2]); } } return sDate; } function addMonth(date, num) { num = parseInt(num); var sDate = dateToDate(date); var sYear = sDate.getFullYear(); var sMonth = sDate.getMonth() + 1; var sDay = sDate.getDate(); var eYear = sYear; var eMonth = sMonth + num; var eDay = sDay; while (eMonth > 12) { eYear++; eMonth -= 12; } var eDate = new Date(eYear, eMonth - 1, eDay); while (eDate.getMonth() != eMonth - 1) { eDay--; eDate = new Date(eYear, eMonth - 1, eDay); } return eDate; } function calcDate() { var d = document.getElementById('date').value; var n = document.getElementById('num').value; var eDate = addMonth(d, n); document.getElementById('result').innerHTML = eDate.getFullYear() + '-' + (eDate.getMonth() + 1) + '-' + eDate.getDate(); } </script></head><body> <input type="date" id="date" /> <input type="number" id="num" value="1" /> <input type="button" value="计算" onclick="calcDate()" /> <div id="result"></div></body></html>
新闻热点
疑难解答