date.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //字符串拼接
  2. function strFormat(str) {
  3. return str < 10 ? `0${str}` : str
  4. }
  5. //时间戳转日期
  6. export function timeStamp(time) {
  7. const dates = new Date(time)
  8. const year = dates.getFullYear()
  9. const month = dates.getMonth() + 1
  10. const date = dates.getDate()
  11. const day = dates.getDay()
  12. const hour = dates.getHours()
  13. const min = dates.getMinutes()
  14. const days = ['日', '一', '二', '三', '四', '五', '六']
  15. return {
  16. allDate: `${year}/${strFormat(month)}/${strFormat(date)}`,//注:此处ios系统如"-"分割无法显示,只能用"/"分割符
  17. date: `${strFormat(month)}-${strFormat(date)}`, //返回的日期 07-01
  18. day: `星期${days[day]}`, //返回的礼拜天数 星期一
  19. hour: strFormat(hour) + ':' + strFormat(min) //返回的时钟 08:00
  20. }
  21. }
  22. //获取最近7天的日期和礼拜天数
  23. export function dateData() {
  24. const time = []
  25. const date = new Date()
  26. const now = date.getTime() //获取当前日期的时间戳
  27. let timeStr = 3600 * 24 * 1000 //一天的时间戳
  28. for (let i = 0; i < 7; i++) {
  29. const timeObj = {}
  30. timeObj.date = timeStamp(now + timeStr * i).date //保存日期
  31. timeObj.timeStamp = now + timeStr * i //保存时间戳
  32. if (i == 0) {
  33. timeObj.week = '今天'
  34. } else if (i == 1) {
  35. timeObj.week = '明天'
  36. } else if (i == 2) {
  37. timeObj.week = '后天'
  38. } else {
  39. timeObj.week = timeStamp(now + timeStr * i).day
  40. }
  41. time.push(timeObj)
  42. }
  43. return time
  44. }
  45. //时间数组
  46. export function timeData(startTime = '08:00', endTime = '18:30', timeInterval = 0.5) {
  47. const time = []
  48. const date = timeStamp(Date.now()).allDate
  49. const startDate = `${date} ${startTime}`
  50. const endDate = `${date} ${endTime}`
  51. const startTimeStamp = new Date(startDate).getTime()
  52. const endTimeStamp = new Date(endDate).getTime()
  53. const timeStr = 3600 * 1000 * timeInterval
  54. let count = 0
  55. for (let i = startTimeStamp; i <= endTimeStamp; i = i + timeStr) {
  56. const timeObj = {}
  57. timeObj.time = timeStamp(i).hour
  58. timeObj.disable = 1
  59. timeObj.index = count
  60. time.push(timeObj)
  61. count ++
  62. }
  63. return time
  64. }