dateHandle.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /**
  2. * 千里及
  3. * 2021.2.3
  4. * 处理日期的对象
  5. */
  6. export const dateHandle = {
  7. /**
  8. * 获取今天的日期时间串
  9. */
  10. todayDate: function() {
  11. var date = new Date();
  12. var year = date.getFullYear();
  13. var month = date.getMonth() + 1;
  14. var day = date.getDate();
  15. return year + "-" + dateHandle.add0(month) + "-" + dateHandle.add0(day);
  16. },
  17. /**
  18. * 计算两个日期之间相差的天数
  19. * @param {Object} sDate1
  20. * @param {Object} sDate2
  21. */
  22. dateDiff: function(sDate1, sDate2) {
  23. if(sDate1 == sDate2){
  24. return 0;
  25. }
  26. if(!sDate1){
  27. var date = new Date();
  28. var year = date.getFullYear();
  29. var month = date.getMonth()+1;
  30. var day = date.getDate();
  31. sDate1 = year + "-" + month + "-" + day;
  32. }
  33. var oDate1, oDate2, iDays ;
  34. oDate1 = dateHandle.createDate(sDate1);
  35. oDate2 = dateHandle.createDate(sDate2);
  36. //把相差的毫秒数转换为天数
  37. iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24);
  38. return iDays;
  39. },
  40. /**
  41. * 计算指定日期之后X天数的日期
  42. * @param {Object} dateTemp
  43. * @param {Object} days
  44. */
  45. getNewData: function(dateTemp, days) {
  46. var nDate = dateHandle.createDate(dateTemp);
  47. var millSeconds = Math.abs(nDate) + (days * 24 * 60 * 60 * 1000);
  48. var rDate = new Date(millSeconds);
  49. var year = rDate.getFullYear();
  50. var month = rDate.getMonth() + 1;
  51. var date = rDate.getDate();
  52. return year + "-" + dateHandle.add0(month) + "-" + dateHandle.add0(date);
  53. },
  54. /**
  55. * 比较第一个日期是否大于第二个
  56. * @param {Object} date1
  57. * @param {Object} date2
  58. */
  59. compare: function(date1, date2) {
  60. var oDate1 = dateHandle.createDate(date1);
  61.   var oDate2 = dateHandle.createDate(date2);
  62. return oDate1.getTime() > oDate2.getTime();
  63. },
  64. createDate: function(str) {
  65. var dateTemp = str.split("-");
  66. return new Date(dateTemp[0], Number(dateTemp[1]) - 1, dateTemp[2]);
  67. },
  68. add0: function(num) {
  69. if (Number(num) < 10) num = "0" + num;
  70. return num;
  71. }
  72. }