Vue如何根据某个时间值获取当月的最后一天

工作中会用到日期组件,有时候选择结束日期只需要用户选择年月,然后需要程序自动补全当月的最后一天,生成yyyy-MM-dd的字符串格式传到后端。

// 纯JS实现

let getEndDateFn = (value) => { // 形参value值的格式为yyyy-MM-dd或yyyy-MM

let date = new Date(value);

let month = date.getMonth() + 1;

month = month < 10 ? "0" + month : month;

let dayEnd = new Date(date.getFullYear(), month, 0).getDate();

let dateValue = date.getFullYear() + "-" + month + "-" + dayEnd;

return dateValue ;

}

// 使用

let endDate = getEndDateFn("2024-01");

console.log(endDate);

还有一种我比较喜欢的方式,引入moment.js插件

// 第一步是安装moment

npm i moment-timezone

// 在页面引用moment

import moment from "moment-timezone";

// 要把moment写在data的return里

data() {

return {

moment,

}

}

/* 在方法里使用 */

// 获取当月第一天:

moment(currDate).startOf("month").format("YYYY-MM-DD")

// 获取当月最后一天:

moment(currDate).endOf("month").format("YYYY-MM-DD")

相关推荐
刘发财3 小时前
弃用html2pdf.js,这个html转pdf方案能力是它的几十倍
前端·javascript·github
牛奶5 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶5 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
Kagol8 小时前
🎉OpenTiny NEXT-SDK 重磅发布:四步把你的前端应用变成智能应用!
前端·开源·agent
GIS之路9 小时前
ArcGIS Pro 中的 notebook 初识
前端
JavaGuide9 小时前
7 道 RAG 基础概念知识点/面试题总结
前端·后端
ssshooter9 小时前
看完就懂 useSyncExternalStore
前端·javascript·react.js
格砸10 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
Live0000011 小时前
在鸿蒙中使用 Repeat 渲染嵌套列表,修改内层列表的一个元素,页面不会更新
前端·javascript·react native
柳杉11 小时前
使用Ai从零开发智慧水利态势感知大屏(开源)
前端·javascript·数据可视化