times.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. * 获取当月第一天
  3. * @param date 日期 new Date()
  4. * @returns
  5. */
  6. export function getFirstDayOfMonth(date: Date) {
  7. const firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
  8. return formatDate(firstDay);
  9. }
  10. /**
  11. * 获取当月最后一天
  12. * @param date 日期 new Date()
  13. * @returns
  14. */
  15. export function getLastDayOfMonth(date: Date) {
  16. const nextMonth = new Date(date.getFullYear(), date.getMonth() + 1, 0);
  17. return formatDate(nextMonth);
  18. }
  19. /**
  20. * 将 Date 对象格式化为 "YYYY-MM-DD" 的形式
  21. * @param date 日期 new Date()
  22. * @returns
  23. */
  24. export function formatDate(date: Date) {
  25. const year = date.getFullYear();
  26. const month = (1 + date.getMonth()).toString().padStart(2, "0");
  27. const day = date.getDate().toString().padStart(2, "0");
  28. return `${year}-${month}-${day}`;
  29. }
  30. /**
  31. * 将 Date 对象格式化为 "YYYY-MM-DD HH:mm:ss" 的形式
  32. * @param date 日期 new Date()
  33. * @returns
  34. */
  35. export function formatDateTime(date: Date) {
  36. const year = date.getFullYear();
  37. const month = (1 + date.getMonth()).toString().padStart(2, "0");
  38. const day = date.getDate().toString().padStart(2, "0");
  39. const hour = date.getHours().toString().padStart(2, "0");
  40. const minute = date.getMinutes().toString().padStart(2, "0");
  41. const second = date.getSeconds().toString().padStart(2, "0");
  42. return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
  43. }
  44. /**
  45. * 将 Date 对象格式化为 "YYYY-MM-DD HH:mm" 的形式
  46. * @param date 日期 new Date()
  47. * @returns
  48. */
  49. export function formatDateMinutes(date: Date) {
  50. const year = date.getFullYear();
  51. const month = (1 + date.getMonth()).toString().padStart(2, "0");
  52. const day = date.getDate().toString().padStart(2, "0");
  53. const hour = date.getHours().toString().padStart(2, "0");
  54. const minute = date.getMinutes().toString().padStart(2, "0");
  55. return `${year}-${month}-${day} ${hour}:${minute}`;
  56. }