js获取上周、本周、上月、本月、第一天和最后一天
生活随笔
收集整理的這篇文章主要介紹了
js获取上周、本周、上月、本月、第一天和最后一天
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
js獲取上周、本周、上月、本月、第一天和最后一天
- 獲取上周、本周的周一、周日
- 獲取上月、本月的第一天和最后一天
- 代碼中用到的日期轉(zhuǎn)字符串方法
獲取上周、本周的周一、周日
思路:先獲取到本周一的時(shí)間
本周日:就是本周一的時(shí)間加6天的時(shí)間
上周一:就是本周一的時(shí)間減7天的時(shí)間
上周日:就是本周一的時(shí)間減1天的時(shí)間
注意:上面的思路不變,js里newDate.getDay()獲取到日期所在的星期的第幾天 0.1.2.3.4.5.6 【0 = 上周周日】
周一至周六newDate.getDay()獲取到的為相應(yīng)的1-6.但是周日獲取到的天數(shù)為0。這是西方的計(jì)算方式,他們每周的周日為每周的第一天,這樣我們用newDate.getDay()獲取到的本周的0.1.2.3.4.5.6,其實(shí)0不是本周日期,為上周的周日。這里我們按照我們的習(xí)慣,周一為每周的第一天(下方代碼里有相應(yīng)的處理)
獲取上月、本月的第一天和最后一天
/*** 得到本月第一天、本月最后一天、上月第一天、上月最后一天日期* return* {* "thisMonthFirstDay": "2022-09-01",* "thisMonthLastDay": "2022-09-30",* "lastMonthFirstDay": "2022-08-01",* "lastMonthLastDay": "2022-08-31"* }*/ export function getMonthFirstDayAndLastDay() {var date = new Date()// 值得注意的是,如果day取值為0,意味著取的是date時(shí)間的上一個(gè)月的最后一天,簡(jiǎn)單理解:date當(dāng)前月的第一天,再減去一天var thisMonthFirstDay = date.setDate(1) // 本月第一天var thisMonthLastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0) // 本月最后一天var lastMonthFirstDay = new Date(date.getFullYear(), date.getMonth() - 1, 1) // 上月第一天var lastMonthLastDay = date.setDate(0) // 上月最后一天// var day = new Date(date.getFullYear(), date.getMonth(), 0).getDate()// var lastMonthLastDay = new Date(date.getFullYear(), date.getMonth() - 1, day) // 上月最后一天var res = {thisMonthFirstDay: dateToYYYYMMDD(thisMonthFirstDay),thisMonthLastDay: dateToYYYYMMDD(thisMonthLastDay),lastMonthFirstDay: dateToYYYYMMDD(lastMonthFirstDay),lastMonthLastDay: dateToYYYYMMDD(lastMonthLastDay),}return res }代碼中用到的日期轉(zhuǎn)字符串方法
// 返回 yyyy-MM-dd 格式字符串 export function dateToYYYYMMDD(date) {var time = new Date(date);var y = time.getFullYear();var m = (time.getMonth() + 1);m = m > 9 ? m : '0' + m;var d = time.getDate();d = d > 9 ? d : '0' + d;return y + "-" + m + "-" + d; }```總結(jié)
以上是生活随笔為你收集整理的js获取上周、本周、上月、本月、第一天和最后一天的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络安全态势感知研究综述
- 下一篇: 免费正版 IntelliJ IDEA l