首页 前端知识 Vue如何根据某个时间值获取当月的最后一天

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

2024-01-24 15:01:50 前端知识 前端哥 99 260 我要收藏

工作中会用到日期组件,有时候选择结束日期只需要用户选择年月,然后需要程序自动补全当月的最后一天,生成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”)

转载请注明出处或者链接地址:https://www.qianduange.cn//article/216.html
评论
会员中心 联系我 留言建议 回顶部
复制成功!