<body> <div> 請輸入第一個日期:<input type="date" id="Date1" /> <br/> 請輸入第二個日期:<input type="date" id="Date2" /> <br/> 請輸入日期相差數: <input type="text" id="differ" />(參數:1:相差天數,2:相差小時數,3:相差分鐘數,4:相差毫秒數) <br/> <input type="button" value="調用測試" οnclick="TestClick()" /> </div> </body>
<script> //獲取當前日期 var getNowDate = function () { var d = new Date(); var year = d.getFullYear(); var month = d.getMonth() + 1; var day = d.getDate(); var dateStr = year + '-' + getFormatDate(month) + '-' + getFormatDate(day); return dateStr; } //格式化日期的月份或天數的顯示(小於10,在前面增加0) function getFormatDate(value) { var result; result = value < 10 ? ("0" + value) : value; return result; } //獲取與毫秒數的轉化比例(相差天數:1,相差小時數:2,相差分鐘數:3,相差秒數:4) var getDifferScale = function (value) { var format; //獲取轉化比(天數跟毫秒數的比例) if (value == 1) { format = parseFloat(24 * 60 * 60 * 1000); } //獲取轉化比(小時數跟毫秒數的比例) else if (value == 2) { format = parseFloat(60 * 60 * 1000); } //獲取轉化比(分鐘數跟毫秒數的比例) else if (value == 3) { format = parseFloat(60 * 1000); } //獲取轉化比(秒數跟毫秒數的比例) else if (value == 4) { format = parseFloat(1000); } return format; } //獲取兩個日期的相差日期數(differ 相差天數:1、相差小時數:2、相差分鐘數:3、相差秒數:4) var getDifferDate = function (firstDate, secondDate, differ) { //1)將兩個日期字符串轉化爲日期對象 var startDate = new Date(firstDate); var endDate = new Date(secondDate); //2)計算兩個日期相差的毫秒數 var msecNum = endDate.getTime() - startDate.getTime(); //3)計算兩個日期相差的天數 var dayNum = Math.floor(msecNum /getDifferScale(differ)); return dayNum; } //測試方法 var TestClick = function(){ var date1 = $("#Date1").val(); var date2 = $("#Date2").val(); var differ = $("#differ").val(); if(date1 == "" || date1==null){ alert("第一個日期不能爲空"); } else if(date2 == "" || date2==null){ alert("第二個日期不能爲空"); } else if(differ == "" || differ==null ){ alert("日期相差數不能爲空"); } var result = getDifferDate(date1,date2,differ); console.log("輸出結果:"+ result); } </script>
轉載內容地址:cnblogs.com/xielong/p/8269119.html