vue3封装获取当前年、月、季度、周

1.新建在utils文件夹中handleTime.js文件用于封装方法

javascript 复制代码
// 计算当前周的开始和结束时间
export function calcNowWeek() {
  let startWeek = moment().weekday(0).format('YYYY-MM-DD');
  startWeek = moment(startWeek).subtract(2, 'days').format('YYYY-MM-DD')
  let endWeek = moment().weekday(4).format('YYYY-MM-DD')
  return { startWeek, endWeek }
}
// 计算当前月份的开始和结束时间
export function calcNowMonth() {
  let startMonth = moment().startOf('month').format('YYYY-MM-DD');
  let endMonth = moment().endOf('month').format('YYYY-MM-DD');
  return { startMonth, endMonth }
}
// 计算当前季度的开始和结束时间
export function calcNowQuarter() {
  let index = moment().quarter();
  let year = moment().year();
  let startQuarter = moment(`${year}-${3*(index-1) +1}-01`).format('YYYY-MM-DD');
  let endQuarter = moment(`${year}-${3*index}-${new Date('2024',3*index,0).getDate()}`).format('YYYY-MM-DD');
  return { startQuarter, endQuarter }
}
// 计算当前年的开始和结束时间
export function calcNowYear() {
  let year = moment().year();
  return {
    startYear: `${year}-01-01`,
    endYear: `${year}-12-31`
  }
}

2.引入使用

javascript 复制代码
import { calcNowWeek, calcNowMonth, calcNowQuarter, calcNowYear } from "@/utils/handleTime";



console.log(calcNowQuarter()) // 输出['2024-04-01','2024-06-30']
相关推荐
明月_清风6 分钟前
小程序云函数:从入门到全栈的“降维打击”指南
前端·微信小程序·小程序·云开发
wuhen_n7 分钟前
告别 Options API:为什么 Composition API 是逻辑复用的未来?
前端·javascript·vue.js
明月_清风9 分钟前
前端异常捕获:从“页面崩了”到“精准定位”的实战架构
前端·javascript·监控
wuhen_n12 分钟前
高效的数据解构:用 toRefs 和 toRef 保持响应性
前端·javascript·vue.js
小兵张健11 小时前
价值1000的 AI 工作流:Codex 通用前端协作模式
前端·aigc·ai编程
sunny_11 小时前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
拉不动的猪11 小时前
移动端调试工具VConsole初始化时的加载阻塞问题
前端·javascript·微信小程序
ayqy贾杰13 小时前
Agent First Engineering
前端·vue.js·面试
IT_陈寒13 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
iceiceiceice14 小时前
iOS PDF阅读器段评实现:如何从 PDFSelection 精准还原一个自然段
前端·人工智能·ios