index.ts 948 B

12345678910111213141516171819202122232425262728293031323334
  1. import moment, { Moment } from "moment";
  2. /**
  3. * 获取number类型时间戳
  4. * @returns
  5. */
  6. export function getTimeValue(): number {
  7. return moment().valueOf()
  8. }
  9. type Time = string | Moment | Date
  10. /**
  11. * 获取两个时间范围内的所有时间
  12. * @param val1 时间1
  13. * @param val2 时间2
  14. * @param type 时间格式化类型
  15. * @returns string[]类型
  16. */
  17. export function getRangeTime(val1: Time, val2: Time, type = 'YYYYMMDD'): string[] {
  18. const fn = (val: Time) => moment(val).format(type)
  19. const result: string[] = []
  20. // 处理开始时间和结束时间
  21. let startTime = fn(val1)
  22. let endTime = fn(val2)
  23. if (moment(startTime).isAfter(moment(endTime))) {
  24. [startTime, endTime] = [endTime, startTime]
  25. }
  26. while (!moment(startTime).isSame(moment(endTime))) {
  27. result.push(startTime)
  28. startTime = moment(startTime).add(1, 'd').format(type)
  29. }
  30. result.push(endTime)
  31. return result
  32. }